mysql 数据库和表、字段已设置utf8mb4编码,依然报错:Incorrect string value: ‘\xF0\x9F\xA7\xB8\xF0\x9F...
略
·
前言
略
情况说明
- 创建数据库时使用 utf8mb4,创建表时使用 utf8mb4
- 用mysql管理工具(navicat、mysql-front、…)可以成功插入数据
- 通过jdbc插入数据时,依然报错:Incorrect string value: '\xF0\x9F\xA7\xB8\xF0\x9F…
解决办法
修改配置mysql.ini,让jdbc也可插入utf8mb4格式的数据。
[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'
修改后重启mysql,再登录到mysql验证修改是否生效。
mysql> SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';
+————————————-+——————————+
| Variable_name | Value |
+————————————-+——————————+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| collation_connection | utf8mb4_unicode_ci |
| collation_database | utf8mb4_unicode_ci |
| collation_server | utf8mb4_unicode_ci |
+————————————-+——————————-+
参考
更多推荐
已为社区贡献1条内容
所有评论(0)