文档首页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


12.10.7.2 gb18030 字符集

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

MySQL gb18030 字符集的特性
  • 支持 GB 18030-2005 标准定义的所有码位。范围 (GB+8431A439, GB+90308130) 和 (GB+E3329A36, GB+EF39EF39) 中未分配的码位将被视为 '?' (0x3F)。未分配码位的转换返回 '?'。

  • 支持所有 GB18030 码位的 UPPER 和 LOWER 转换。还支持 Unicode 定义的大小写折叠(基于 CaseFolding-6.3.0.txt)。

  • 支持将数据转换为其他字符集,以及从其他字符集转换数据。

  • 支持诸如 SET NAMES 之类的 SQL 语句。

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

  • Unicode 中的专用区域 (U+E000, U+F8FF) 被映射到 gb18030

  • (U+D800, U+DFFF) 与 GB18030 之间没有映射。尝试将此范围内的码位进行转换将返回 '?'。

  • 如果传入的序列非法,则返回错误或警告。如果在 CONVERT() 中使用非法序列,则返回错误。否则,返回警告。

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

  • 使用 gb18030_unicode_520_ci 排序规则时,对连字的搜索也将匹配大写连字。

  • 如果一个字符有多个大写字符,则选择的大写字符是其小写形式为该字符本身的那个。

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

支持的排序规则
  • gb18030_bin:二进制排序规则。

  • gb18030_chinese_ci:默认排序规则,支持拼音。非中文字符的排序基于原始排序键的顺序。原始排序键为 GB(UPPER(ch))(如果 UPPER(ch) 存在)。否则,原始排序键为 GB(ch)。中文字符根据 Unicode 通用区域数据存储库 (CLDR 24) 中定义的拼音排序规则进行排序。非中文字符在中文字符之前排序,但 GB+FE39FE39 除外,它是码位最大值。

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