1.现象

mysql 表的关联或者子查询是报错
1267 - Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_unicode_ci,IMPLICIT) for operation ‘=’
在这里插入图片描述

2.原因

sql语句各个表的默认校队字符集不一致导致的报警。
通过 show create table table_name语句查看各个表的默认校队字符集定位是那张表的原因;

3.解决方案

执行语句

ALTER TABLE dim_date_tcl CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 

将dim_date_tcl 表的校队字符集由 utf8mb4_unicode_ci 改为 utf8mb4_general_ci

4.常用语句

# 查询所有跟字符集相关的信息
show variables like '%char%';
# 查看字符集对应的校对规则
show collation where charset = 'utf8mb4';

#更改数据库编码:
ALTER DATABASE caitu99 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

#更改表的编码:
ALTER DATABASE caitu99 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

在这里插入图片描述
在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐