10.10.7.2 gb18030 字符集

在 MySQL 中,gb18030字符集对应于“中华人民共和国国家标准 GB 18030-2005:信息技术中文编码字符集”,它是中华人民共和国(PRC)的官方字符集。

MySQL gb18030 字符集的 Feature
  • 支持 GB 18030-2005 标准定义的所有代码点。 (GB 8431A439,GB 90308130)和(GB E3329A36,GB EF39EF39)范围内未分配的代码点被视为'?'(0x3F)。未分配代码点的转换返回“ ?”。

  • 支持所有 GB18030 代码点的上,下转换。还支持 Unicode 定义的大小写折叠(基于CaseFolding-6.3.0.txt)。

  • 支持与其他字符集之间的数据转换。

  • 支持 SQL 语句,例如SET NAMES

  • 支持gb18030字符串之间,gb18030字符串与其他字符集的字符串之间的比较。如果字符串具有不同的字符集,则会进行转换。还支持包含或忽略尾随空格的比较。

  • Unicode 中的专用区域(U E000,U F8FF)Map 到gb18030

  • (U D800,U DFFF)和 GB18030 之间没有 Map。尝试转换此范围内的代码点将返回“ ?”。

  • 如果 Importing 序列不合法,则会返回错误或警告。如果在CONVERT()中使用了非法序列,则返回错误。否则,将返回警告。

  • 为了与utf8utf8mb4保持一致,连字不支持 UPPER。

  • 使用gb18030_unicode_520_ci归类时,对连字的搜索还匹配大写连字。

  • 如果一个字符有多个大写字符,则所选的大写字符为小写字符本身。

  • 多字节的最小长度为 1,最大为 4.字符集使用前 1 个或 2 个字节来确定序列的长度。

Supported Collations
  • gb18030_bin:二进制排序规则。

  • gb18030_chinese_ci:默认排序规则,支持拼音。非中 Literals 符的排序基于原始排序键的 Sequences。如果UPPER(ch)存在,则原始排序键为GB(UPPER(ch))。否则,原始排序键为GB(ch)。汉字根据 Unicode 通用语言环境数据存储库(CLDR 24)中定义的拼音排序规则进行排序。非汉字在汉字之前排序,但GB+FE39FE39除外,这是最大的代码点。

  • gb18030_unicode_520_ci:Unicode 归类。如果需要确保连字正确排序,请使用此排序规则。