> 1267 - Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '<>'
时间: 2023-12-06 22:36:52 浏览: 71
MySQL 编码utf8 与 utf8mb4 utf8mb4_unicode_ci 与 utf8mb4_general_ci
5星 · 资源好评率100%
这个错误通常是由于在比较两个不同字符集或校对规则的列时引起的。在MySQL中,每个列都有一个字符集和一个校对规则。如果您在比较两个不同字符集或校对规则的列时使用了比较运算符,则会出现此错误。
解决此问题的方法是将两个列的字符集和校对规则设置为相同的值。您可以使用ALTER TABLE语句更改表的字符集和校对规则,也可以在创建表时指定它们。
以下是一个示例ALTER TABLE语句,将表的字符集和校对规则更改为utf8mb4和utf8mb4_general_ci:
```sql
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
```
如果您正在创建表,请使用以下语句指定字符集和校对规则:
```sql
CREATE TABLE table_name (
column1 datatype CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci,
column2 datatype CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci,
...
);
```
阅读全文