mysql报错Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLICIT) for operation '='
时间: 2023-11-07 17:52:00 浏览: 59
这个错误通常是由于在比较或连接操作中使用了不同的字符集和校对规则引起的。解决该问题的一种方法是通过使用 COLLATE 子句显式指定相同的字符集和校对规则来进行操作。
你可以尝试在比较或连接操作中使用 COLLATE 子句,例如:
```sql
SELECT column1, column2
FROM table
WHERE column1 COLLATE utf8mb4_general_ci = column2 COLLATE utf8mb4_general_ci;
```
这样可以确保比较或连接操作使用相同的字符集和校对规则。
另外,你还可以考虑修改表的字符集和校对规则以确保一致性。例如,你可以使用 ALTER TABLE 语句修改表的字符集和校对规则:
```sql
ALTER TABLE table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
```
这将把表的字符集和校对规则修改为 utf8mb4_general_ci。请注意,这可能会影响现有数据,因此请在执行此操作之前进行备份。
希望这些方法能帮助你解决问题!如果还有其他问题,请随时提问。