Bonjour,
J'ai à ma disposition des tables avec des champs de type VARCHAR et TEXT.
Les tables possèdent comme collation (ou interclassement?) par défaut: utf8_unicode_ci
Mais je m'aperçois lorsque je consulte mes données des mots comme "Générale" qui devrait être "Générale"
Ainsi que d'autres caractères pour tous les lettres avec des accents.
J'ai essayé manuellement de les repérer dans mes données qui est assez énormes ( 10 000 de lignes de données environ dans une table)
Et de les remplacer avec cette requête pour chaque colonne de mes tables:
Par exemple, j'ai une table document contenant des champs de type VARCHAR pour le champ titre, et pour le champ auteur et de type TEXT pour le champ resume.
J'utilise cette requete pour une colonne, ici resume:
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 UPDATE document SET resume = replace(replace(replace(replace(replace(replace(resume,'é', 'é'),'è', 'è'), 'ç', 'ç'), 'ô', 'ô'), 'ï', 'ï'), 'ë', 'ë') WHERE (resume LIKE '%é%') OR (resume LIKE '%Ã%¨') OR (resume LIKE '%ç%') OR (resume LIKE '%Ã%') OR (resume LIKE '%ï%') OR (resume LIKE '%ë%');
Il y a certainement des caractères que j'ai oublié dans ma requête. Je compte appliquer cette requête à toutes les colonnes de mes tables possédant des types TEXT et VARCHAR.
Existe t-il un moyen pour remédier à ce problème d'une meilleur façon?
Merci d'avance![]()
Partager