Error querying database. Cause: java.sql.SQLException: Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '=' ###
原因:数据库排序规则选择不正确,重新创建数据库把utf8_unicode_ci改为utf8_general_ci即可。
_ci结尾表示大小写不敏感(caseinsensitive)
_cs表示大小写敏感(case sensitive)
_bin表示二进制的比较(binary)
utf8_general_ci 不支持扩展。它仅能够在字符之间进行逐个比较,校对规则进行的比较速度快,和utf8_unicode_ci相比正确性差
utf8_unicode_ci 准确度高,但校对速度稍慢。
为了易于数据扩展,一般我们创建数据库都会选择utf8字符集,那么utf8字符集的默认排序规则是utf8_general_ci
utf8mb4兼容utf8,且比utf8能表示更多的字串,将编码改为utf8mb4外不需要做其他转换。当然,为了节省空间,一般情况下使用utf8也就够了。
参考链接:https://blog.youkuaiyun.com/konglingna2016/article/details/117266751