Assurez-vous que l'encodage de votre configuration MySQL est correctement défini. Vérifiez vos paramètres et l'exactitude des modifications avec ces commandes :
show variables like 'character%';
et show variables like 'collation%';
Ajoutez ces lignes soit à my.cnf ou mon.ini :
Pour MySQL 5.1.nn et les versions ultérieures 5.5.29, vous avez juste besoin de ces deux lignes :
[mysqld]
character-set-server = utf8
character-set-filesystem = utf8
Pour MySQL 5.0.nn et les versions antérieures, utilisez ces paramètres :
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
default-character-set=utf8
character-set-server=utf8
Il est probablement plus pratique d'utiliser MySQL-Workbench pour vos paramètres. Les versions 5+ sont excellentes.
Dans votre programme Java, connectez-vous comme ceci :
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&characterEncoding=UTF-8","user","passwd");