J'ai déplacé la base de données d'un hôte à un autre. J'ai utilisé PMA pour exporter et bigdump pour importer. La base de données entière a jeu de caractères latin2 partout où c'est possible. Cependant, dans la base de données, les caractères spéciaux (polish ąęłó, etc.) sont brisés. Quand j'ai utilisé SELECT je vois "buissons" - "Ä" "insetad de" ± ". Ensuite, j'ai mis l'encodage de document à utf-8 ... Et les caractères sont bons. Comment régler ceci? Peut-il être fait en utilisant CONVERT dans la requête? Je ne veux plus exporter/importer la base de données, car elle a plus de 200 Mo. Qu'est-ce qui ne va pas? Chaque solution de requête PHP/MySQL me sauvera. Désolé si vous ne pouvez pas comprendre ceci, parce que j'apprends toujours l'anglais bien.Conversion de charset de base de données
1
A
Répondre
1
Si une table contient le mauvais type de charset (disons utf-8 a glissé dans la colonne latin1 varhcar (255)):
ALTER TABLE tablename MODIFY colummname BINARY(255);
ALTER TABLE tablename MODIFY colummname VARCHAR(255) CHARSET utf8;
ALTER TABLE tablename MODIFY colummname VARCHAR(255) CHARSET latin1;
Voir aussi: http://dev.mysql.com/doc/refman/4.1/en/charset-conversion.html
Cependant, est plus probablement vous avez juste un mauvais jeu de caractères dans votre connexion par défaut. Qu'est-ce qu'un SET NAMES latin1;
avant de sélectionner le résultat?
latin2 BTW Je l'ai déjà corrigé, en ajoutant le mode Mysql40 – Misiur