Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_unicode_ci,IMPLICIT) for operat

Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_unicode_ci,IMPLICIT) for operation '='

今天写了一个简单的sql,报了如上错误。一度让我怀疑人生,这么简单的sql都写不好吗?

一经查证,原来是进行比较的两个字段的字符集编码不同导致。

解决办法:

1:修改其中的一个字符集,对于表结构进行更改。

2: 在其中的一个列后面加上 COLLATE utf8mb4_unicode_ci/utf8mb4_general_ci 进行指定。

注意:这种情况是不应该出现的,在进行表结构设计更改时,字符集应该统一

你可能感兴趣的:(mysql,mysql)