微信昵称 mysql_mysql 微信用户昵称emoji 完整保存
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情。起先,我总以为MySQL只能保存纯文本数据。但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji表情)已不在话下。
起先,我的项目是无法保存这些含有emoji表情的昵称。为了鲜明的对比前后我做出的调整,先来看看之前的状况。
1.mysql表字段定义
`third_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '用户第三方账号昵称',
字段类型为utf8
2.mysql数据库连接字符串
jdbc连接使用的编码格式也为utf8
3.微信昵称
这昵称中有emoji表情的小眼睛在瞅着我。
4.保存出错
Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x91\x80\xE5\xBC...' for column 'third_name' at row 1at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)
接下来,我们看一下可以保存后的调整。
①、mysql表字段定义为utf8mb4
`third_name` varchar(255) CHARACTER SET utf8mb4 DEFAULT NULL COMMENT '用户第三方账号昵称',
注意改成了“utf8mb4”,不再是utf8,主要是支持的字节数不同。
MySQL在5.5.3版本之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode。其实,utf8mb4是utf8的超集,理论上原来使用utf8,然后将字符集修改为utf8mb4,也会不会对已有的utf8编码读取产生任何问题。当然,为了节省空间,一般情况下使用utf8也就够了。
想要了解的更多,请参照浅谈MySQL中utf8和utf8mb4的区别
②.mysql数据库连接字符串去掉编码方式,假如不行,那就把编码改成utf8mb4也可以的
③.保存后效果
使用Navicat查看的效果如下:
网页上效果如下,小眼睛可以正常显示:
微信昵称 mysql_mysql 微信用户昵称emoji 完整保存相关推荐
- 微信昵称乱码 mysql_微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案...
微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案如下: 问题产生原因:由于数据库及属性一致设为utf8,而utf8只支持1-3个字节.当用户昵称为emoji表情时,获取用户基本信 ...
- mysql存储用户昵称_mysql 微信用户昵称 emoji 完整保存 - 人人都是架构师
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...
- mysql 微信用户昵称 emoji 完整保存
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...
- mysql 微信昵称怎么保存_mysql 微信用户昵称emoji 完整保存
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...
- 【微信小程序】微信小程序开发--用户昵称中带有emoji表情的处理方法
刚开始写小程序,获取客户昵称,后来发现用户昵称是可以为emoji表情的,而Mysql数据库中是不支持直接将emoji表情直接存入数据库的,后来在网站上找了一个方法将所有的昵称转变为Unicode编码存 ...
- 微信开放接口获取用户昵称保存到MySQL中为空白
微信昵称中包含emoji表情标签,某些标签是使用了4字节编码的UTF8. 而大多数MySQL数据库现在使用的是3字节UTF8编码,这样会导致保存为空,且不会提示失败. 解决方法有2个,一个是升级到My ...
- 微信小程序获取用户昵称中含有emoj表情,后端处理方式以及回显。
1.在做微信小程序的时候遇到了用户昵称中含有emoj表情无法入库的情况. ### Cause: java.sql.SQLException: Incorrect string value: '\xF0 ...
- 微信小程序获取用户昵称和头像
getUserInfo.js Page({data: {userInfo: {},hasUserInfo: false,canIUseGetUserProfile: false,},onLoad() ...
- 微信网页授权获取用户昵称中文乱码
微信默认编码ISO-8859-1,需要转换 new String(userinfo.getBytes("ISO-8859-1"), "UTF-8"): 欢迎关注 ...
最新文章
- 短 URL 服务,怎么设计与实现?
- Deep Learning 教程(斯坦福深度学习研究团队)
- 老王Python-进阶篇4-面向对象第三节
- c# 找出目录下的所有子目录_第9期:Linux下文件系统满的处理
- Linux——Linux C语言编程基础知识
- idea 类注释,方法注释设置
- 代码区,初始化全局数据区,BSS,堆区,栈区,程序环境变量区简介
- xcode windows版安装使用教程
- 深度学习-从感知器到LSTM(目的是处理序列问题)
- vue 异步更新队列 Vue.nextTick(callback)
- Java整人程序-电脑关机
- GO GOPROXY代理设置
- easyexcel1.0导出excel测试案例
- openwrt 锐捷 单线多拨
- 地税局工资管理系统(论文+设计)新
- Python基础操作(2)
- 桂电计算机系入学怎么分班,桂电研究生-()学期课程总表.doc
- OCI跨租户(Tenancy)Object Storage文件复制
- 7个国外社交网络用户数据情况
- win10 JDK-8u231安装点击下一步没反应 解决方法-JDK安装记录