本文主要是介绍MySQL存储Emoji表情符号问题及解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
emoji就是表情符号;词义来自日语(えもじ,e-moji,moji在日语中的含义是字符),现已普遍应用于手机短信和网络聊天软件,是很流行使用的一种表情字符。
MYSQL 5.5 之前, UTF8/utf8mb3 编码只能存储最大3个字节的字符, 从MYSQL5.5开始,可支持4个字节UTF编码字符,但要特殊标记,即显式定义表或字段为utf8mb4编码类型。如果表或字段已经定义为utf8/utf8mb3,可使用alter table语句将utf8/utf8mb3升级为utf8mb4。
对应语句如下:
ALTER TABLE app_message MODIFY title VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '标题';
说明:
1.对于BMP(Basic Multilingual Plane)字符,utf8跟utf8mb4具有相同的存储特性:使用相同的编码和编码值,以同样的长度存储。
2.将表或列的字符编码类型由utf8升级成utf8mb4时,不需要转换储存的字符数据,因此也不会丢失数据
utf8mb4的详细说明碱MySQL官方文档:
http://dev.mysql.com/doc/refman/5.6/en/charset-unicode-utf8mb4.html
这篇关于MySQL存储Emoji表情符号问题及解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!