Java - Mysql异常不是unicode

标签 java mysql exception unicode

我正在编写一个 Java Gui,一切正常!我唯一的问题是,当我得到一个 mysql 异常时,它看起来像这样....

您的 SQL 语法有误;查看与您的 MySQL 服务器版本相对应的手册,了解在“,”附近使用的正确语法。 Δ-ΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔΔ, _£î™ - §î•!™!’‘!‥¥et¥ - et o

我的数据库和所有的表格和数据都是用希腊语写的!当我选择,插入和修改时我没有任何问题我只在它抛出异常时才得到它!一开始我认为这是 eclipe 的控制台故障所以我设法成为 utf-8 但是当我将异常传递给消息框时我遇到了同样的问题。我还用于连接 getConnection("jdbc:mysql://"+host+"/db_name?useUnicode=true&characterEncoding=utf-8",username, password);"

有什么好的想法吗??谢谢!

最佳答案

看起来像是 MySQL JDBC 连接器中的错误。该语句在使用连接编码(在您的情况下为 UTF-8)发送到服务器的途中进行编码,但返回过程中的错误使用 platformEncoding(Java file.encoding,在你的情况下看起来像 ISO-8859-1 或 cp1252)。

您可以通过确保默认编码为 UTF-8 来解决这个问题,尽管通常任何依赖默认编码的东西都是不好的。或者当然使用仅 ASCII 模式名称。

关于Java - Mysql异常不是unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26170716/

相关文章:

java - 使用 PowerMockito 运行 Cobertura 抛出 java.lang.OutOfMemoryError : PermGen space

mysql - 如何在 ORDER BY if 语句中使用 ASC/DESC?

mysql - 不在声明中

PHP OOP 数据库连接

python - 异常处理中的这种奇怪行为是什么?

java - OpenAM + Spring Security SAML 获取 SAML 请求是无效响应

java - 为什么除非我提取文件,否则我的 Jar 不会运行?

java - 在Java Applet中绘制图像和ImageObserver

java - 在 Java 中如何抛出和捕获异常?

c# - 在 C# 中尝试/捕获所有异常