1.utf8和utf8mb4区别:
utf-8编码可能2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符。如果直接往采用utf-8编码的数据库中插入表情数据,Java程序中将报SQL异常:
2.解决:
修改mysql的配置文件mysql.ini,
分别在 [mysql],[mysqld]三项下面修改默认编码(如果没有该项,加上即可)
character_set_server = utf8mb4
如下图所示:修改完之后重启mysql服务即可。