
SQl语句中加了IN 后报 Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (gb2312_chinese_ci,IMPLICIT) for operation '=' 错误。
从提示中看是字符集错误。
我首先更改了数据库的字符集,错误仍然。
然后更改了表的字符集,问题解决。更改方法是在Navicat 的“设计”修改字符集。如下图红色部分。
============== ====================
字符集设置及查看:
MySQL的默认编码是Latin1,不支持中文,要支持中文需要把数据库的默认编码修改为gbk或者utf8。
1、需要以root用户身份登陆才可以查看数据库编码方式(以root用户身份登陆的命令为:>mysql -u root –p,之后两次输入root用户的密码),查看数据库的编码方式命令为:
>show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_clien

在执行SQL语句时遇到字符集不匹配的问题,报错'Illegal mix of collations...'。尝试更改数据库和表的字符集,通过在Navicat中修改表的设计解决了问题。此外,介绍了查看和修改MySQL字符集的方法,包括通过`show variables like 'character%'`命令检查当前设置,以及在Linux和Windows环境下修改my.cnf配置文件来永久改变字符集。还提到了创建数据库时指定字符集的方式和在连接字符串中设置编码的示例。

最低0.47元/天 解锁文章

1987

被折叠的 条评论
为什么被折叠?



