my存入表情符号emoji MYSQL: Caused by: java.sql.SQLException: Incorrect string value:

15 篇文章 0 订阅

首先数据库存入emoji表情数据库字符集需要是uft8mb4 字符集. uft8mb4 是utf-8的超集

添加emoji表情sql

UPDATE `so` SET `delivery_remark`=x'F09F9A8A' WHERE `id` = 14497144169653;

如果程序不行就看这三部

    (1)修改mysql数据库的编码为uft8mb4
    (2)修改数据表的编码为utf8mb4
    (3)修改连接数据库的连接代码

                                     重启数据库

修改数据库字符集 character_set_server 后一定要重启数据库要不不生效本人踩过坑。

注意:

  • mysql的版本不能太低,低于5.5.3的版本不支持utf8mb4编码。
  • 若出现仍未生效的情况,可考虑修改mysql数据库对于字符的配置,以及相应的表对于字符的配置。
  • 对于5.1.46及更早版本jdb-connector,要使用utf8mb4字符集进行连接,服务器必须配置character_set_server=utf8mb4;如果不是这样,则在连接字符串中使用UTF-8进行字符编码时,它将映射到MySQL字符集名称utf8,这是utf8mb3的别名。
  • autoReconnect=true : 如果你已经升级好了mysql-connector,其中的characterEncoding=utf8可以被自动被识别为utf8mb4(当然也兼容原来的utf8),而autoReconnect配置我强烈建议配上,我之前就是忽略了这个属性,导致因为缓存缘故,没有读取到DB最新配置,导致一直无法使用utf8mb4字符集,多么痛的领悟!!

数据库链接字符串

characterEncoding=utf-8
character_set_server=utf8mb4

 

 

参考:https://www.cnblogs.com/chyingp/p/mysql-character-set-collation.html

官网说明:https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-charsets.html

参考:https://blog.csdn.net/hzw19920329/article/details/55670782

参考:https://www.cnblogs.com/silenceshining/p/12556131.html

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值