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

是不是哪里设置还是不成功,我用的时nodejs。我直接通过数据库添加数据同样也是失败。数据版本为5.7.12

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

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

温馨提示:答案为网友推荐,仅供参考
相似回答