我有一个聊天服务器在MongoDB中存储消息...表情符号(特别是表情符号)让我感到悲伤。
显然表情符号/表情符号是UTF8-mb4编码的...... MongoDB可以用这种编码存储数据吗?如果它不能直接存储UTF8-mb4是否有某种解决方法?
答案 0 :(得分:3)
MongoDB支持UTF8,它支持所有字符(可变字节长度)。
最初的实施" utf8"通过MySQL只有3个字节(像许多其他实现一样)。 MySQL实现名为' utf8-mb4'实际上长达4个字节(就像官方RFC推荐的那样)。
因此MySQL中的utf8-mb4与mongoDB中的UTF8相同。
我在测试中看到的内容: Robomongo不支持中文4字节字符,例如MongoVUE没有问题。
有关utf8最大字节大小的有趣文章:https://stijndewitt.wordpress.com/2014/08/09/max-bytes-in-a-utf-8-char/
(答复更新)