一个字存Mysql Incorrect string value: ‘\xF0\xA3\x8E\xB4‘ for column ‘msg‘ at row 1

当尝试在MySQL 5.7.2版本中插入包含特殊汉字如'𣎴'时,遇到Incorrect string value错误。解决方案包括修改字段、表及全局字符集至utf8mb4,以及在my.ini配置文件中设置字符集。但需注意,仅修改配置文件并不持久,需使用SET NAMES utf8mb4语句确保连接字符集。尽管过程繁琐,但最终成功解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

“𣎴” 这个字存Mysql Incorrect string value: '\xF0\xA3\x8E\xB4' for column 'msg' at ro

mysql 版本5.7.2

查了资料是修改字符集utf8mb4就可以了

我单纯的以为修改了字段的字符集就可以解决,然后继续报错

实在生气,修改了真个表的字符集,然后继续报错

没有脾气了

找个博客继续认证看看,发现他们要麻烦的修改mysql的配置文件

然后修改了my.ini 文件中的字符集

default-character-set=utf8mb4

character-set-server=utf8mb4

然后重启了mysql,

着急的试了下,发现还没成功,

少了一句话

SET NAMES utf8mb4

然后就成功了。

然后发现这个语句竟然是一次性的。尴尬。。。

老老实实的增加配置

3修改mysql配置文件my.cnf(windows为my.ini) 

my.cnf一般在etc/mysql/my.cnf位置。找到后请在以下三部分里添加如下内容: 
[client] 
default-character-set = utf8mb4 
[mysql] 
default-character-set = utf8mb4 
[mysqld] 
character-set-client-handshake = FALSE 
character-set-server = utf8mb4 
collation-server = utf8mb4_unicode_ci 
init_connect='SET NAMES utf8mb4'

这样的修改成本有点大呀,太麻烦了,还是算了。虽然成功,但是不改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值