当MySQL插入中文生僻字时会出现以下报错:
ERROR 1366 (HY000): Incorrect string value: '\xE6\x96\xB0\xE9\x97\xBB...' for column 'xxx' at row 1
解决方案:
第一步:修改 my.ini
配置
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
修改完成后重启MySQL;
第二步:修改表编码格式
将表的编码格式修改为:utf8mb4
第三步:修改字段编码格式
将字段的编码格式修改为:utf8mb4-unicode-ci
其他:
如果无法修改MySQL配置文件,则在插入之前执行SET NAMES
语句,具体如下:
SET NAMES utf8mb4;
INSERT INTO rpa_tuisongxiansuo (STORE,ZYLXR,CREATED_DATE) VALUES ('测试',"林?羿洋",'2021-11-11');