J'essaie d'écrire un programme client simple Java qui utilise koi8r comme jeu de caractères, et continue d'échouer.MySql Jdbc Connector - problème de localisation
Class.forName("com.mysql.jdbc.Driver");
Connection conn2 = DriverManager.getConnection ("jdbc:mysql://localhost:3306/test","root",null);
Statement stmt = conn2.createStatement();
int result;
result = stmt.executeUpdate("SET CHARACTER SET koi8r");
stmt = conn2.createStatement();
result = stmt.executeUpdate("DROP TABLE IF EXISTS װֱֱֲֳֹּ, t1, t2");
stmt.close();
assertEquals(0, result);
Je reçois
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '???????, t1, t2' at line 1
Quand je mets ces commandes dans un fichier de script et les exécuter en utilisant le client MySql il fonctionne très bien
SET CHARACTER SET koi8r
DROP TABLE IF EXISTS װֱֱֲֳֹּ, t1, t2
Je renifle le réseau et j'ai vu le connecteur jdbc l'envoie avec ?????? au serveur, donc je suppose que je manque un peu de réglage à la connexion. En fait, j'ai essayé (setEncoding, setCharactersEncoding, setConncetionCollation ...), mais j'ai quand même échoué.
Salut, je ne connais pas beaucoup de koi8r mais ce lien peut aider. http://www.fileformat.info/info/charset/KOI8-R/index.htm – Ankit