Java Mysql异常不是unicode
我正在编写一个JavaGUI,一切都很好!我唯一的问题是,当我得到一个mysql异常时,它看起来像这样
您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以了解使用接近“^{
我的数据库和所有的表和数据都是用希腊语写的!我没有任何问题,当我选择,插入和修改我只得到它时,它抛出一个异常!起初,我认为这是eclipe控制台的错误,所以我设法成为utf-8,但当我将异常传递到消息框时,我也遇到了同样的问题。我还用于连接getConnection(“jdbc:mysql://“+host+”/db_name?useucode=true&;characterEncoding=utf-8”,用户名、密码);"
有什么好主意吗??谢谢大家!
# 1 楼答案
看起来像是MySQL JDBC连接器中的错误。该语句在发送到服务器的过程中使用连接编码(在您的例子中是UTF-8)进行编码,但返回过程中的错误使用平台编码(Java
file.encoding
,在您的例子中看起来像ISO-8859-1或cp1252)进行解码您可以通过确保默认编码是UTF-8来解决这个问题,尽管一般来说,任何依赖默认编码的东西都是坏事。当然,也可以只使用ASCII模式名称