Java et Mysql : Unsupported character encoding
Bonjour à tous,
Je tente actuellement de développer un serveur en java, utilisant une base de données MySQL. Je développe sous linux (Debian).
Voici mon code pour tester ma connexion :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| import java.sql.*;
public class Test
{
public static void main(String[] args)
{
System.out.println("Chargement des drivers...");
//String nomDriver = "org.gjt.mm.mysql.Driver";
String nomDriver = "com.mysql.jdbc.Driver";
try
{
Class.forName(nomDriver);
}
catch(ClassNotFoundException cnfe)
{
System.out.println("La classe "+nomDriver+" n'a pas été trouvée");
cnfe.printStackTrace();
}
System.out.println("Connexion à la base de donnée...");
try {
String myString = "jdbc:mysql://localhost/ma_base?&useUnicode=true&characterEncoding=UTF-8&user=user&password=password";
Connection con = DriverManager.getConnection(myString);
System.out.println("Execution d'une requète...");
try
{
String queryString = "SELECT * FROM TABLE ";
Statement stmt = con.createStatement() ;
ResultSet rs = stmt.executeQuery( queryString ) ;
}
catch (SQLException e)
{
System.out.println("Erreur pour la requete : " +e.getMessage());
}
} catch (SQLException ex) {
// handle any errors
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
}
}
} |
et voici la sortie :
$ java -cp . Test
Chargement des drivers...
Connexion à la base de donnée...
SQLException: Unsupported character encoding 'Cp1252'.
SQLState: S1009
VendorError: 0
Voici quelques infos (d'après phpmyadmin) qui pourraient éventuellement vous êtres utiles pour m'aider :
Version du serveur: 5.0.30-Debian_1-log
Version du client MySQL: 4.1.15
voici les paquets installés :
- libmysqlclient15off
- mysql-client
- mysql-client-5.0
- mysql-common
- mysql-server-5.0
Une chose étrange, sur un autre ordinateur de chez moi, le même programme (toujours sous linux : ubuntu cette fois) fonctionne.
Voici les caractèristiques (d'après phpmyadmin) qui diffèrent avec l'autre configuration :
Version du serveur: 5.0.24a-Debian_9-log
Version du client MySQL: 5.0.24a
Dans les deux cas, j'utilise mysql-connector/j version 3.1.14 (j'ai tenté avec la version 5, ça ne fonctionne pas non plus).
J'ai cherché, j'ai trituré mes configurations, désinstallé/réinstallé mysql client et server, sans succès !
Merci d'avance de m'apporter vos lumières sur mon problème,
je suis à votre disposition pour fournir plus de détails.
Cordialement,
CocoduNombriL