- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我用的是mysql 5.5.10,它的character_sets是
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
| collation_connection | utf8mb4_general_ci |
| collation_database | utf8mb4_general_ci |
| collation_server | utf8mb4_general_ci |
我将 utf8mb4 从 utf8 更改为 iOS5 的表情符号。它们由 4 字节代码表示。
但是当我插入 3 个笑脸表情符号时,'???'在mysql中。
它们是 3F 3F 3F(十六进制)。
iOS4 的表情我可以很好地存储,但 iOS5 的却不行。
如何存储 iOS5 的表情符号?
请帮帮我。
最佳答案
4 字节 Unicode 字符尚未广泛使用,因此并非所有应用程序都完全支持它们。正确配置后,MySQL 5.5 可以正常使用 4 字节字符 - 检查您的其他组件是否也可以使用它们。
还有一些其他的事情要检查:
除了设置客户端和服务器字符集(例如ALTER TABLE mytable charset=utf8mb4, MODIFY COLUMN textfield1 VARCHAR(255) CHARACTER SET utf8mb4,MODIFY COLUMN textfield2 VARCHAR(255) CHARACTER SET utf8mb4;
等等。
如果您的数据已经在 utf8 字符集中,它应该就地转换为 utf8mb4,没有任何问题。与往常一样,在尝试之前备份您的数据!
还要确保您的应用层将其数据库连接的字符集设置为 utf8mb4。仔细检查这是否真的发生了——如果您正在运行您选择的框架的 mysql 客户端库的旧版本,它可能没有使用 utf8mb4 支持进行编译,并且不会正确设置字符集。如果没有,您可能需要自己更新或编译。
通过 mysql 客户端查看数据时,请确保您在可以显示表情符号的机器上,并在运行任何查询之前运行 SET NAMES utf8mb4
。
一旦您的应用程序的每个级别都可以支持新字符,您就应该能够在没有任何损坏的情况下使用它们。
关于iphone - 如何在 mysql 中插入 utf-8 mb4 字符(ios5 中的表情符号)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7814293/
我是一名优秀的程序员,十分优秀!