最近在做聊天记录存读取时候,发现安卓手机发的emoji表情直接存入mysql会报错。
类似:java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x8E\xF0\x9F...' for......
发生这个问题的原因就是:emoji表情是utf-8编码,但是占用4个字节,而mysql的utf-8字符集的数据库每个字符只有3个字节,所以无法保存emoji表情到mysql数据库。
解决办法:
一、修改数据库字符集为utf8mb4