mysql5.6 已经设置成了utf8mb4,存入emoji后是4个问号 ????
mysql5.6 已经设置成了utf8mb4,存入emoji后是4个问号 ????
已确保 程序链接是 utf8mb4
对应的表也设置了utf8mb4 字段也设置了utf8mb4
使用的这个语法设置utf8mb4
语法:ALTER TABLE <表名> CONVERT TO CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci
;
但是还是不知道什么原因 还是存的4个问号 ????
回答:
emoji表情用的是Unicode编码,超过了UTF-8的编码范围
以下为网上摘抄:
emoji表情采用的是 Unicode编码,Emoji就是一种在Unicode位于\u1F601-\u1F64F区段的字符。这个显然超过了目前常用的UTF-8字符集的编码范围\u0000-\uFFFF。
确定数据库设置没问题,可以检查下连接的charset是否正确
回答:
检查一下 数据库的字符集是否已经是utf8mb4, 表的字符集是否已经是utf8mb4,字段的字符集是否已经是utf8mb4
回答:
utf8mb4_general_ci修改为utf8mb4_unicode_ci
回答:
查看你的数据库链接配置。是否声明了字符集是utf8mb4
回答:
可以先通过 insert 语句 插入一条emoji表情的数据。看看结果。
先确定 是程序插入问题、还是数据库设置问题。
以上是 mysql5.6 已经设置成了utf8mb4,存入emoji后是4个问号 ???? 的全部内容, 来源链接: utcz.com/p/944148.html