1.保证创建数据库字符集为下图(我的是正确的),在数据库的属性中可以看到,正确的现象为,用管理工具连接执行含有表情的字符语句正常执行。
2.在springboot代码中执行更新语句报错(我出错的地方)
Error updating database. Cause: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x90\x92' for column 'XXXX' at row 34
此种错误是因为mysql的配置文件my.ini设置问题,
以下为安装默认的设置 都为utf8这种字符集
# 设置mysql客户端默认字符集
default-character-set=utf8
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
修改为:
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8mb4
修改完成重启mysql服务即可。
重启命令:
-
linux输入命令:service mysql restart
-
windows输入命令:net stop mysql 和 net start mysql