11.1 QQ登录有特殊字符报错
1.MySQL的“utf8mb4”是真正的“UTF-8”。
2.MySQL的“utf8”是一种“专属的编码”,它能够编码的Unicode字符并不多。
##一、特殊字符
🍎过客
"\uD83C\uDF4E过客"
c4c8f8f530363ce512af5e40e9822e64
java.sql.SQLException: (conn=318298) Incorrect string value: '\xF0\x9F\x8D\x8E\xE8\xBF...' for column 'nickname' at row 1##二、问题
###1.1366,"Incorrect string value:'\xF0\x9F\x98\x82...
保存时出现以下错误

1366,"Incorrect string value:'\\xF0\\x9F\\x98\\x82...
这个问题,原因是UTF-8编码有可能是两个、三个、四个字节。Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。###2.修改字符编码集
###3.本地数据库出现问题

只有本地安装的数据库修改 字段的字符集有问题,线上的数据库没问题java.sql.SQLException: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='
Query is: select * from users where nickname=? and is_exist = 1, parameters ['🍎过客6']
java.sql.SQLException: (conn=318163) Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='
报错:客户端连接时报错,不支持该字符集
需要修改数据库配置文件my.cnf