博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL写入用户微信名
阅读量:5080 次
发布时间:2019-06-12

本文共 648 字,大约阅读时间需要 2 分钟。

很简单的需求,将用户微信名写入MySQl即可,但是测试过程中却遇到了问题,微信名中的emoji写入数据库失败。解决步骤如下

 

1.了解utf8mb4

MySQL从5.5.3版本开始支持utf8mb4编码,默认编码还是utf8。目前最新的MySQL的默认编码已经改为utf8mb4了,因为utf8可以表示三字节的unicode,无法表示emoji表情或是特别复杂的汉字这类四字节unicode。理论上原本utf8的字符集修改为utf8mb4是不会有问题的,为了更好的兼容性可以选择utf8mb4。当然,本着节省空间的原则,我们还是可以优先使用utf8。

 

2.修改MySQL数据库

首先查看数据库的字符集,show variables like 'character_set_database';

查询结果为utf8,既然系统已经出现了字符集的兼容性的问题,那干脆改为utf8mb4吧

修改MySQL配置文件my.cnf

[mysqld]

 character-set-server = utf8mb4 

init_connect='SET NAMES utf8mb4'

然后重启MySQL即可

 

3.修改数据表字符集

ALTER TABLE TABLENAME CHARSET=utf8mb4

 

4.修改业务代码

在连接数据库时,一般都显示指定了字符集,需要修改为utf8mb4,charset=utf8mb4

 

转载于:https://www.cnblogs.com/baiyb/p/8908809.html

你可能感兴趣的文章
用C语言操纵Mysql
查看>>
轻松学MVC4.0–6 MVC的执行流程
查看>>
redis集群如何清理前缀相同的key
查看>>
Python 集合(Set)、字典(Dictionary)
查看>>
获取元素
查看>>
proxy写监听方法,实现响应式
查看>>
第一阶段冲刺06
查看>>
十个免费的 Web 压力测试工具
查看>>
EOS生产区块:解析插件producer_plugin
查看>>
mysql重置密码
查看>>
jQuery轮 播的封装
查看>>
一天一道算法题--5.30---递归
查看>>
JS取得绝对路径
查看>>
排球积分程序(三)——模型类的设计
查看>>
python numpy sum函数用法
查看>>
php变量什么情况下加大括号{}
查看>>
linux程序设计---序
查看>>
【字符串入门专题1】hdu3613 【一个悲伤的exkmp】
查看>>
C# Linq获取两个List或数组的差集交集
查看>>
HDU 4635 Strongly connected
查看>>