#### mysql5.6 存生僻字问题,浏览度娘N多页,没能解决。。。
设定如下:
1、数据库/表/字段 都已设为utf8mb4;
mysql> set character_set_client=utf8mb4;
mysql> set character_set_connection=utf8mb4;
mysql> set character_set_database=utf8mb4;
2、数据库连接编码 已设为utf8mb4
3、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
数据库测试如下:
存入字段 spz [唯一值]
测试数据3条
id spz
1 𠀉
2 𠀇111
3 𠀍222
id 1 存入和读取正常
id 2/3 存入𠀇、𠀍时,提示:SPZ字段已存在该字符,唯一值冲突,所以在后面加了111/222
查询1:
SELECT * FROM `zibiao` WHERE `spz` LIKE '𠀇%';
SELECT * FROM `zibiao` WHERE `spz` LIKE '𠀍%';
均返回 id 1 的值 𠀉
查询2:
SELECT * FROM `zibiao` WHERE `spz` = '𠀍%';
返回 全部三条数据
数据库可以正常存入,正常读取对应id的值,貌似mysql不能辨别mb4字符,求解