Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Exceção SQL perplexa para JDBC


Essas são as partes relevantes:
com.mysql.jdbc.exceptions.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 '????????????????' at line 1
    ...
    com.mysql.jdbc.ConnectionImpl.configureClientCharacterSet(ConnectionImpl.java:1890)
    ...
    java.sql.DriverManager.getConnection(libgcj.so.10)

Esses pontos de interrogação indicam um sério problema de codificação de caracteres durante a consulta para configurar o conjunto de caracteres do cliente.

Como primeira tentativa, abra o my.cnf e certifique-se de que as duas entradas a seguir estejam presentes:
character_set_server=utf8
collation_server=utf8_general_ci

Como segunda tentativa, substitua o GCJ por OpenJDK ou Oracle (Sun) JDK que são bem mais robustos. O GCJ é conhecido por ter suas esquisitices.