你想要的性格,U+20F2D http://www.fileformat.info/info/unicode/char/20f2d/,驻留在 Unicode 的“补充表意文字平面”的“CJK 统一表意文字扩展 B”块中,因此在 v5.5 之前的任何 MySQL Unicode 字符集中不可用;从 v5.5 开始,它可以在utf8mb4 http://dev.mysql.com/doc/en/charset-unicode-utf8mb4.html, utf16 http://dev.mysql.com/doc/en/charset-unicode-utf16.html, utf16le http://dev.mysql.com/doc/en/charset-unicode-utf16le.html and utf32 http://dev.mysql.com/doc/en/charset-unicode-utf32.html字符集。
它在 MySQL 中不可用big5
or gbk
字符集。
Why the utf8
编码不起作用
正如下面记录的统一码支持 http://dev.mysql.com/doc/refman/5.6/en/charset-unicode.html:
Unicode 支持的初始实现(在 MySQL 4.1 中)包括两个用于存储 Unicode 数据的字符集:
这两个字符集支持 Unicode 版本 3.0 的基本多语言平面 (BMP) 中的字符。 BMP 字符具有以下特点:
它们的代码值在 0 到 65535 之间(或U+0000
.. U+FFFF
).
它们可以用固定的 16 位字进行编码,如下所示ucs2
.
它们可以用 8、16 或 24 位进行编码,如下所示utf8
.
它们足以用于主要语言中的几乎所有字符。
上述字符集不支持的字符包括位于 BMP 之外的补充字符。 BMP 之外的字符作为替换字符进行比较并转换为'?'
当转换为 Unicode 字符集时。
在 MySQL 5.6 中,Unicode 支持包括增补字符,这需要范围更广的新字符集,因此占用更多空间。下表显示了以前和当前 Unicode 支持的简要功能比较。
╔══════════════════════════════╦══════════════════════════════════════════════╗
║ Before MySQL 5.5 ║ MySQL 5.5 and up ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ All Unicode 3.0 characters ║ All Unicode 5.0 and 6.0 characters ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ No supplementary characters ║ With supplementary characters ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ ucs2 character set, BMP only ║ No change ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ utf8 character set for up to ║ No change ║
║ three bytes, BMP only ║ ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ ║ New utf8mb4 character set for up to four ║
║ ║ bytes, BMP or supplemental ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ ║ New utf16 character set, BMP or supplemental ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ ║ New utf16le character set, BMP or ║
║ ║ supplemental (5.6.1 and up) ║
╠══════════════════════════════╬══════════════════════════════════════════════╣
║ ║ New utf32 character set, BMP or supplemental ║
╚══════════════════════════════╩══════════════════════════════════════════════╝
这些更改是向上兼容的。如果您想使用新的字符集,您的应用程序可能会出现不兼容问题;看第 10.1.11 节 “从以前的 Unicode 支持升级到当前的 Unicode 支持” http://dev.mysql.com/doc/en/charset-unicode-upgrading.html。该部分还描述了如何将表从utf8
到(4字节)utf8mb4
字符集,以及这样做可能适用的限制。
Why the big5
编码不起作用
正如下面记录的使用Big5中文字符集需要注意哪些问题? http://dev.mysql.com/doc/en/faqs-cjk.html#qandaitem-B-11-1-3:
MySQL 支持香港和台湾(中华民国)常见的 Big5 字符集。 MySQL 的big5
实际上是 Microsoft 代码页 950,与原始代码非常相似big5
字符集。
[ deletia ]
添加功能请求HKSCS
已提交延期。需要此扩展的人可能会对 Bug #13577 的建议补丁感兴趣。
Why the gbk
编码不起作用
正如下面记录的MySQL 中有哪些 CJK 字符集可用? http://dev.mysql.com/doc/en/faqs-cjk.html#qandaitem-B-11-1-1:
在这里,我们试图澄清哪些字符是合法的gb2312
or gbk
,参考官方文档。请在报告前检查这些参考资料gb2312
or gbk
bugs.
如需完整列表gb2312
字符,按照gb2312_chinese_ci
整理:gb2312 http://www.collation-charts.org/mysql60/by-charset.html#gb2312
MySQL's gbk
实际上是“Microsoft 代码页 936”。这个和官方的不一样gbk
对于角色A1A4
(中间的点),A1AA
(破折号),A6E0-A6F5
, and A8BB-A8C0
.
对于列表gbk
/Unicode 映射,请参阅http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP936.TXT http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP936.TXT.
对于 MySQL 的列表gbk
字符,参见gbk http://www.collation-charts.org/mysql60/by-charset.html#gbk.