Page 1 sur 1

Problème de charset

Posté : 30 avr. 2007, 11:21
par Sékiltoyai
Bonsoir,

Apparement en ce moment ca a l'air d'être la fête des charset, j'en profite donc.
Etant en train de laborieusement essayer de convertir une base de données phpbb2 vers fsb2, je rencontre des problèmes de charset, le premier étant en ISO-8859-1, et l'autre en UTF-8.

J'ai donc lors du transfert de données par INSERT ... SELECT ...; utilisé la fonction CONVERT, ce qui n'a pas marché, j'ai réessayé lors d'un UPDATE :

Code : Tout sélectionner

UPDATE `fsb2_forums` SET `f_name`=CONVERT(`f_name` USING UTF8);
Le résultat est le même, la requète s'effectue mais ne convertit pas les données, ce qui donne des caractères ISO-8859-1 interprétés comme de l'UTF-8 lorsque j'affiche la liste des forums. Il est vrai que phpMyAdmin gère mal les charset, mais en l'occurence, ici, c'est le serveur SQL qui doit faire la conversion, ce qu'il rechigne à faire.

Quelqu'un a-t'il une solution miracle à me proposer (à part passer par le php, ce qui rendrait inutile d'avoir cherché à faire moi même le transfert) ?

Merci d'avance :)

Posté : 30 avr. 2007, 11:47
par sadeq
Es-tu sur que tes champs dans fsb2 sont formatés UTF-8.
Essaye de les forcer avec un ALTER:

Code : Tout sélectionner

ALTER TABLE ma_table MODIFY champ varchar( 255 ) CHARACTER SET UTF8 NOT NULL

Posté : 30 avr. 2007, 12:47
par Sékiltoyai
L'interclassement des tables et des champs fsb2 est utf8_general_ci, et de toute facon, connaissant le développeur du forum, les tables ont été faites proprement.