【发布时间】:2013-03-07 20:42:29
【问题描述】:
我正在协助将数据库从 MySQL 4 升级到 MySQL 5.5。我的客户端的应用服务器也从JDK 5升级到JDK 7。应用运行但是在执行数据库操作时抛出了很多异常。
我发现升级后的数据库在表排序规则和/或表列排序规则中混合使用了 Latin1 generic、Latin1 Swedish 和 UTF8 generic,因此大多数 JOIN 查询都失败了。
有数百个表,数千个表字段,手动转换将非常困难。
有没有更方便的方法将所有数据表和所有列转换为相同的排序规则?
谢谢。
编辑:显示 JOIN 查询失败的 SQLException 消息示例:
“用于操作 '=' 的排序规则 (latin1_general_ci,IMPLICIT) 和 (utf8_general_ci,COERCIBLE) 的非法混合”
【问题讨论】:
-
您确定字符集是导致 JOIN 查询失败的原因吗? - 你能举个例子吗,因为这不应该发生。
标签: mysql