mysql 表字符集不匹配报错

参考:https://www.cnblogs.com/minutes/p/10808026.html

报错:java.sql.SQLException: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLICIT) for operation '='

原因:几张表关联的时候,如果表的字符集不一致,就会出现这样的问题

几步走:

1、查看字符集配置
show VARIABLES WHERE variable_name like '%collation%'

2、看一下关联的表使用的是什么字符集:
show create table xx_table;

3、修改表字符集:
alter table xx_table1 default character set utf8mb4 collate=utf8mb4_0900_ai_ci ;

4、修改字段的字符集:
有时候只改表的字符集是不行的,还需要改字段的字符集

ALTER TABLE xx_table2 convert to CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容