更新时间:2025-06-30 GMT+08:00

字符集

GaussDB数据库支持指定数据库、模式、表或列的字符集,默认的字符集是utf8。支持的范围如下。

表1 字符集列表

MySQL数据库

GaussDB数据库

utf8mb4

支持

utf8

支持

gbk

支持

gb18030

支持

binary

支持

latin1

支持

  • GaussDB数据库将utf8和utf8mb4视为同一个字符集,编码最大长度为4字节。当字符串字符集为utf8,指定其字符序为utf8mb4_bin/utf8mb4_general_ci/utf8mb4_unicode_ci/utf8mb4_0900_ai_ci时(例如SELECT _utf8'a' collate utf8mb4_bin),MySQL中会发生报错,GaussDB不报错。当字符串字符集为utf8mb4,指定其字符序为utf8_bin/utf8_general_ci/utf8_unicode_ci时,存在同样差异。
  • 词法语法解析按照字节流解析,当多字节字符中包含与'\', '\'', '\\'等符号一致的编码时,会导致与MySQL行为不一致,建议暂时关闭转义符开关(请参见《管理员指南》中“配置运行参数 > GUC参数说明 > 版本和平台兼容性 > 平台和客户端兼容性”章节中GUC参数m_format_behavior_compat_options的enable_escape_string选项)进行规避。
  • GaussDB数据库对不属于当前字符集的非法字符未执行严格的编码逻辑校验,可能导致此类非法字符成功输入,而MySQL会校验报错。