Bonjour,

J’ai une base de données qui me sert pour générer des rapports au format PDF (grâce à l’outil Ireport). La base en question est en « latin1», j’aimerai convertir cette base en utf8 pour que l’affichage des accents se fasse correctement dans mes rapports.

J’ai pensé à procéder comme ceci :

1-Créer une nouvelle base en « utf8 » (car la première est une base de production et doit être en latin).
2-Faire un dump de ma première base que je vais appeler « dump.sql » .
3-Convertir le dump.sql du « latin1» en « utf8 ».
4-Injecter le nouveau dump (en utf8) dans ma deuxième base.

Pour faire le dump de ma base d’origine j’utilise la commande:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
mysqldump -u mari -ptoto --opt my-data-base -h localhost > C:\dump.sql
Pour importer mon dump dans la nouvelle base j’utilise
Code : Sélectionner tout - Visualiser dans une fenêtre à part
mysql -u mari -ptoto -h localhost -D new-data-base < C:\dump-utf.sql
Problème:
Je n’arrive pas à convertir le dump.sql en faisant ma petite recherche j’essaie de le convertir en utilisant la commande suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
iconv -f latin1 -t utf8 -o C:\dump-utf8.sql C:\dump.sql
j'ai un message d'erreur m'indiquant que la syntaxe est fausse :-(

Question:
Est ce que ma façon de procéder est correcte ou existe il une meilleur solution ?
Quelle est la meilleur façon de convertir l'encodage d'un fichier sql?

Merci d'avance