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

回到顶部