在MySQL中存储表情符号的java获取错误字符串值错误
我正在存储包含表情符号的数据,数据是json格式的,所以当我检索它时
"Giggs'ern har vært å koset seg igjen(square bracket) Dette er en fillesak"
当我将其存储到MySQL中时,出现以下错误:
2016-05-0213:12:45.582 [ERROR] pool-1-thread-1 org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect string value:
'\xF0\x9F\x98\x8A\x0A<...'
for column'comment'
at row 1
我改变了主意
MySQL数据库编码为utf8mb4
,但它没有解决问题
# 1 楼答案
这是我的工作
将表的字符集更改为
utf8mb4
,将排序规则更改为utf8mb4_unicode_ci
。最后,将要存储表情符号的列的数据类型更改为blob
或longblob
# 2 楼答案
我认为您需要使用
utf8mb4
编码而不是utf8
(同义词utf8mb3
)作为存储编码(服务器端)和所有连接的编码(客户端)