Posts Tagged ‘SQL’

Cause: java.sql.SQLException: Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation ‘=’

2020-09-13 by Jinyang | No Comments | Filed in 技术相关

生产服务器的MySql默认是utf8_general_ci字符集,但是有部分表格的字段是utf8_unicode_ci字符集。 按此前的处理方法,转换下其中一个的字符集即可,参考语句: ALTER TABLE tablenameCHANGE COLUMN colname colnameVARCHAR(45) CHARACTER SET ‘utf8’ COLLATE utf8_unicode_ci NULL DEFAULT NULL COMMENT ‘备注 但是这次的2个表 都已经有其他业务逻辑在使用,贸然调整的话 会引发其他业务的异常,于是用上了sql语句中的字符集转换方法 这样对原始存储不做改变 不影响既有业务: select * from table1 where table1.userid = CONVERT (table2.openid USING utf8) COLLATE utf8_general_ci 最好的当然是在业务规划设计时就明确确定好使用utf8_unicode_ci。

Tags:

返回顶部