为了账号安全,请及时绑定邮箱和手机立即绑定

mysql 数据库支持emjoy表情

标签:
MySQL

数据库支持emjoy表情

对于emjoy表情,插入数据库的时候总是报错如下:

Incorrect string value: '\xF0\x9F\x98\x8D' for column 'REAL_NAME' at row 1

从上面看出该字段不支持emjoy表情

check

查找发现emjoy表情采用的是utf8mb4存储,utf8mb4是utf8的超集(包含了一些非常见字符,比如说emoji表情还有一些特殊汉字),实际上mysql里面的utf8mb4才是传统意义上的utf8;性能上没有区别,只是少数的字符用4byte进行编码,

官方说明:

Connector/J did not support utf8mb4 for servers 5.5.2 and newer.
Connector/J now auto-detects servers configured with character_set_server=utf8mb4or treats the Java encoding utf-8 passed using characterEncoding=... as utf8mb4in the SET NAMES= calls it makes when establishing the connection. (Bug #54175)

参考文献:

http://dev.mysql.com/doc/relnotes/connector-j/en/news-5-1-13.html

关于其它客户端如何连接方法

Python

 self.conn=MySQLdb.connect(host="xxx",user="xxx",passwd="xxx",charset="utf8",init_command="set names utf8mb4”)

PHP

 建立连接使用set names utf8mb4命令就可以



作者:全栈运维
链接:https://www.jianshu.com/p/be9d033c70a5

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消