【无标题】

Incorrect string value: ‘\xF0\x9F\x98\xAD",…’ for column ‘commentContent’ at row 1

这个问题困扰了我一天,就是数据库保存聊天记录是,对于表情包不能存储,因为数据库使用的是utf-8,这个字符集不能存储,具体原因可以百度。我看其他人解释的是因为utf-8最多可以存储3个字节,表情包这些是扩展字符,存不下,所以需要utf8mb4这个扩展字符集来存储。

问题解决:修改

将数据库字符集修改为utf8mb4,表也修改,我是两个都修改,一开始就是按照其它博客来做。没试过只修改一个表能不能成。
在这里插入图片描述
在这里插入图片描述
记得修改连接数据库的url,将characterEncoding=utf8去掉,别想着修改为utf8mb4还是会报错,别问我为什么知道,去掉就完事了。
注意点就是好像版本太低了修改了也没用,它不支持,我的版本是8.0的,5.7以上应该都可以。

但是~~

还是不行-_-
原因在于我的数据库是云服务器的数据库,这个修改只能一次连接有效,ok我又是一通搜索,终于找到一个看似解决的答案

SET character_set_client='utf8mb4';
SET character_set_connection='utf8mb4';
SET character_set_results='utf8mb4';

sql窗口执行一下这三句代码,问题就解决了,我目前是没问题,仅供参考。不保解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值