【MySQL】 java.sql.SQLException: Illegal mix of collations

MySQL进行字符串比较时发生错误

java.sql.SQLException: Illegal mix of collations (utf8_esperanto_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '=';

解决方法:

1、查看表之间的编码是否一致;

    show create table <表名>;

2、如果表不一致,修改其中一个表的编码格式,使其表间编码一致

    alter table <表名> character set utf8 COLLATE utf8_general_ci;

3、表间编码一致仍出现同样错误,查询(相关查询语句的,=号两边)字段之间是否一致

    show full columns from <表名>;
    SELECT CHARSET(<字段名>) FROM <表名>;

4、修改字段编码
ALTER TABLE <表名> MODIFY <字段名> <字段类型> CHARACTER SET utf8 COLLATE utf8_general_ci;

你可能感兴趣的:(mysql)