mysql 插入emjoy报错如何解决,已经将字段设置为utf8mb4。网上很多方法我都试过,但是就是不成功

是不是哪里设置还是不成功,我用的时nodejs。我直接通过数据库添加数据同样也是失败。数据版本为5.7.12... 是不是哪里设置还是不成功,我用的时nodejs。我直接通过数据库添加数据同样也是失败。数据版本为5.7.12 展开
 我来答
森林的沉睡
推荐于2017-12-15 · TA获得超过297个赞
知道小有建树答主
回答量:179
采纳率:85%
帮助的人:157万
展开全部

先确定下字符集的修改是否有落实到具体字段上:

SELECT character_set_name,collation_name
 FROM information_schema.columns
WHERE table_schema = 'app'
  AND table_name = 'cm_user'
  AND column_name = 'user_name';

都应该是utf8mb4;

针对直接在数据库添加emoji数据也失败的情况, 

如添加🍀

先在数据库客户端执行

set names 'utf8mb4';

再去做更新或者插入的动作;

如果可以, 解决的方向是调整客户端连接数据库所使用的字符集, 一般和连接数据库使用的driver有关;

如果不行, 再确认下mysql服务的[mysqld]配置下是否以下配置

skip-character-set-client-handshake
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式