彻底解决:java.sql.SQLException: Incorrect string value: ‘xF0x9Fx92x94‘ for column ‘name‘ at row 1

Posted 泡^泡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了彻底解决:java.sql.SQLException: Incorrect string value: ‘xF0x9Fx92x94‘ for column ‘name‘ at row 1相关的知识,希望对你有一定的参考价值。

出现原因:当insert数据中有表情时发生。而这些表情是按照4个字节一个单位进行编码的,而我们使用的utf-8编码在mysql数据库中默认是按照3个字节一个单位进行编码的。

出现原因:当insert数据中有表情时发生。而这些表情是按照4个字节一个单位进行编码的,而我们使用的utf-8编码在mysql数据库中默认是按照3个字节一个单位进行编码的.

第一步:修改mysql的配置文件mysql/bin/my.ini, 添加如下内容:

注意:是添加内容
[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'

第二步:重启数据库

linux输入命令:service mysql restart
windows输入命令:net stop mysql  和 net start mysql

第三步:修改数据表的编码为utf8mb4

在改动的数据库那,执行查询语句:ALTER TABLE TABLE_NAME CONVERT TO CHARACTER SET utf8mb4;

最后,将数据库连接语句url中去掉characterEncoding;重启项目。

支持emoji小图片的效果:

以上是关于彻底解决:java.sql.SQLException: Incorrect string value: ‘xF0x9Fx92x94‘ for column ‘name‘ at row 1的主要内容,如果未能解决你的问题,请参考以下文章

ORA-00904: "pass": 无效的标识符

彻底解决mysql中文乱码

彻底解决mysql中文乱码

,最终彻底解决

彻底解决matplotlib中文乱码问题(转)

彻底解决mysql中文乱码