我在MySQL数据库中对表和字段使用编码UTF-8 Unicode (utf8mb4)
和排序utf8mb4_unicode_520_ci
。
当我从Sequel Pro导出数据库并在文本编辑器中打开导出的.sql文件时,我的测试字符正确显示,但是当我将文件导回Sequel Pro时,它显示为{{1}在Sequel Pro和我的PHP / MySQL应用程序中都有。
在导入窗口中,我尝试????
和Autodetect
但没有成功。有什么想法吗?
此外,是否有更新的编码我应该使用而不是()使用Unicode (UTF-8)
而不只是utf8mb4_unicode_520_ci
有什么好处?
编辑/这是我想要做的事情的图片。看起来像我的"奇怪"字符一直在轨道上,直到我试图将.sql文件导入Sequel PRO。
答案 0 :(得分:1)
除了订购外,COLLATION
无关紧要。 CHARACTER SET
确实很重要,因为这是一个4字节的代码。
不管怎样,CHARACTER SET utf8
参与其中,尽管你说的是什么。请参阅"问号"在Trouble with utf8 characters; what I see is not what I stored中可能的原因。
请SELECT HEX(...) ...
验证该字符是否实际存储为十六进制F09D8C86
。
提供SHOW CREATE TABLE
,以便我们验证列是否为utf8mb4。
并且,让我们看看连接参数。