|
Il est fréquent de rencontrer un problème de conversion d’encodage des caractères lors du travail sur les bases SQL de site web ou de base de données marketing, ou autre. Dans ce contexte, j’ai mis en place pour moi-même cette rustine (une requête simple en MySQL) qui permet de retrouver ses petits, et convertit tous les caractères spéciaux spécifiques au français de l’ISO-8859-1 (l’ancien standard européen) à l’UTF-8, la nouvelle norme internationale incontournable.
Code SQL :
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’à´’,'ô’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’é’,'é’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’è’,'è’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’°’,'°’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’î’,'î’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’ç’,'ç’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’ë’,'ë’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’Ã’,'à’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’ê’,'ê’);
UPDATE Nom-de-votre-table SET Nom-de-votre-champ = REPLACE(Nom-de-votre-champ,’â’,'â’);
Cela fonctionne parfaitement sauf pour la gestion du caractère “à” : il comprend un espace qui est totalement invisible en langage SQL. Il suffit de mettre en place une seconde rustine ou un regex afin d’enlever les espaces en trop (par exemple via un UPDATE).
Enfin, je rappelle que ce sont des opérations irréversibles donc avant toute mise en pratique, sauvegardez votre base de données !
Related posts:
- 5 conseils pour augmenter les taux de conversion grâce à vos statistiques de fréquentation
- Diagnostiquer un problème de CSS
- Développez vos conversions grâce à la Google Analytics Conversion University
|