mysql插入Emoji表情报错_MySQL
程序员文章站
2022-06-07 08:20:50
...
今天做的了个获取微信粉丝的功能,发现将昵称插入数据库报错.长度肯定是够的
Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F找了点资料发现UTF-8编码有可能是两个、三个、四个字节。Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。
网上解决方案都是
修改mysql配置
1.在mysql的安装目录下找到my.ini,作如下修改:
[mysqld]
character-set-server=utf8mb4
[mysql]
default-character-set=utf8mb4
2 重启
net stop mysql
net start mysql
3 修改表
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
我只做了第三步就解决我的问题了,现将其记录下来
推荐阅读
-
PHP+MySQL插入操作实例
-
java操作mysql入门代码实例(含插入、更新和查询)
-
mysql报错1033 Incorrect information in file: ‘xxx.frm’问题的解决方法
-
mysql 记录不存在时插入 记录存在则更新的实现方法
-
Linux连接mysql报错:Access denied for user ‘root’@‘localhost’(using password: YES)的解决
-
MySQL 支持 emoji 图标存储
-
mysql报错:Deadlock found when trying to get lock; try restarting transaction的解决方法
-
Linux连接mysql报错:Access denied for user ‘root’@‘localhost’(using password: YES)的解决
-
MySQL存储表情时报错:java.sql.SQLException: Incorrect string value:‘\xF0\x9F\x92\xA9\x0D
-
使用Mysql5.x以上版本出现报错#1929 Incorrect datetime value: '''' for column ''createtime''