MySql5.7.14存储表情字符报错Incorrect string value 「爱情、让人受尽委屈。」 2022-07-17 00:20 512阅读 0赞 在用mysql存储微信用户的昵称时,报了如下错误: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x84' for column 经过网络搜索,总结原因为 因为表情符在某些终端,比如ios5.0以上,是以四字节表示的,而传统的utf8只能保存3字节,所以报错了。 解决办法:修改mysql字符集为utf8mb4 解决步骤: 第一步:修改数据库字符集 第二步:升级最新数据库驱动 * 1.1修改数据库字符集: alter database databasename CHARACTER SET utf8mb4; * 1.2修改表字符集: alter tbale tablename CHARACTER SET utf8mb4; * 1.3修改mysql的init文件 [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。 经过以上修改,使用以下语句: SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%'; 查看数据库的字符集都为utf8mb4了。 * 2.在升级最新的mysql数据库驱动(mysql-connector-java 6.0.3)后出现了新错误: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone value '?й???????' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support. 原因有三个: \- 2.1 新driverClassName的路径改为com.mysql.cj.jdbc.Driver了 \- 2.2 数据库连接url上添加 serverTimezone=GMT \- 2.3 数据库连接url上添加 userSSL=false 至此,所有的问题全部解决。 参考: > [http://blog.csdn.net/wwtang9527/article/details/40947469][http_blog.csdn.net_wwtang9527_article_details_40947469] > [http://blog.csdn.net/sinat\_33201781/article/details/51830688][http_blog.csdn.net_sinat_33201781_article_details_51830688] [http_blog.csdn.net_wwtang9527_article_details_40947469]: http://blog.csdn.net/wwtang9527/article/details/40947469 [http_blog.csdn.net_sinat_33201781_article_details_51830688]: http://blog.csdn.net/sinat_33201781/article/details/51830688
相关 执行Mysql存储过程报错java.sql.SQLException: Incorrect string value 目录 一、报错信息 二、场景 三、排查 四、原因 五、解决 六、例 --------- 逃离我推掉我的手/ 2023年10月10日 17:23/ 0 赞/ 65 阅读
相关 添加数据报错Incorrect string value 关于数据库抛出异常:Incorrect string value: ‘\\xE7\\xA…’ for column ‘字段名’ at row 1 问题的解决方法: 有可能 ╰半夏微凉°/ 2023年10月06日 08:27/ 0 赞/ 64 阅读
相关 mysql 插入数据报错 Truncated incorrect DOUBLE value 插入语句为: delimiter // create procedure create_test_data() begin decla 悠悠/ 2023年02月18日 10:55/ 0 赞/ 33 阅读
相关 Mysql Incorrect string value问题解决 问题描述 Ubuntu数据的MySQL数据库不能插入中文报错:Incorrect string value: '\\xE6\\xB5\\x8B\\xE8\\xAF\\x95' 你的名字/ 2022年10月23日 08:14/ 0 赞/ 263 阅读
相关 MySql5.7.14存储表情字符报错Incorrect string value 在用mysql存储微信用户的昵称时,报了如下错误: java.sql.SQLException: Incorrect string value: '\xF0\x9F\ 「爱情、让人受尽委屈。」/ 2022年07月17日 00:20/ 0 赞/ 513 阅读
相关 mysql存储表情符号报错 前言 博主再开发微信公众号获取用户姓名的时候,出现了很大的问题,一开始只是设计的数据库的编码为UTF-8,但是在当用户的nickName设置为表情的符号的时候就会出错, 迷南。/ 2022年05月23日 11:04/ 0 赞/ 405 阅读
相关 插入emoji表情到mysql 错误SQLException Incorrect string value xxx 遇到这个问题首先想到的是编码问题 emoji表情保存到数据库,要求字段编码是utf8mb4。 查看了一下数据库编码是latin1 show variables like 客官°小女子只卖身不卖艺/ 2022年04月17日 07:00/ 0 赞/ 150 阅读
相关 MySql插入值时报Incorrect string value: 错 Mysql新建表,插入中文时报错“Incorrect string value: '\\xE4\\xBD\\xA0\\xE5\\xA5\\xBD' for column”问题 蔚落/ 2022年03月22日 03:36/ 0 赞/ 370 阅读
相关 MySql插入报错Incorrect integer value: '' for column 在添加数据时,下拉框中的选项为空,数据库中该字段允许为空,但是添加时会报错: Incorrect integer value: ‘’ for column deductio 左手的ㄟ右手/ 2022年03月06日 02:18/ 0 赞/ 374 阅读
相关 MySQL 插入中文报错(即MySQl ERROR 1366: 1366: Incorrect string value: 错误原因) 在使用MySQL插入中文字符时,出现报错 ERROR 1366: 1366: Incorrect string value: '\xE6\x87\x82' for c 今天药忘吃喽~/ 2022年01月22日 08:31/ 0 赞/ 330 阅读