gpt4 book ai didi

mysql - 通过 Java 从 iOS 应用程序将表情符号字符插入 MySQL DB

转载 作者:行者123 更新时间:2023-11-29 02:30:21 25 4
gpt4 key购买 nike

我在 mysql 5.5.24 服务器上担任 DBA。最近,当一位用户尝试从 iPhone 登录时,我们在生产中遇到了一个问题,但其电话名称本身就包含表情符号字符。

目前我们的系统是utf8字符集,支持3个字节,但是因为手机名有emoji(4个字节),所以注册失败。

如本link所述,我们试图在我们的开发设置中重现相同的场景,但仍然面临问题:

  1. 我尝试将数据库中仅该列的字符集更改为 utf8mb4 - 没有成功
  2. 我修改了将整个数据库的字符集更改为 utf8mb4 - 没有成功

Java 日志:

2013-01-08 11:21:54,547 ERROR [org.hibernate.util.JDBCExceptionReporter] (http-0.0.0.0) Incorrect string value: '\xF0\x9F\x98\x84' for column 'deviceDescription' at row 1

数据库日志:

insert into deviceDetails (deviceDescription, remoteStatus, deviceStatus) values ('?', 0, 1)

注意:Java 端的 Charset 仍然是 utf8。这会是个问题吗?

最佳答案

参见 here .还要确保您的连接字符集是 utfmb4。

Db     characterset:    utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4

关于mysql - 通过 Java 从 iOS 应用程序将表情符号字符插入 MySQL DB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14220410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com