MySQL では、gb18030
文字セットは、中華人民共和国 (PRC) の正式な文字セットである「「中国規格 GB 18030-2005: 情報テクノロジ - 中国語のコード化された文字セット」」に対応します。
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()
で不正な順序が使用されると、エラーが返されます。 それ以外の場合は、警告が返されます。utf8
およびutf8mb4
との一貫性のために、合字で UPPER はサポートされていません。gb18030_unicode_520_ci
照合順序を使用する場合、合字も大文字の合字と一致します。文字に複数の大文字が含まれている場合、選択した大文字が小文字自体になります。
マルチバイトの最小長は 1、最大長は 4 です。 文字セットは、最初の 1 バイトまたは 2 バイトを使用して順序の長さを決定します。
サポートされる照合
gb18030_bin
: バイナリ照合。gb18030_chinese_ci
: Pinyin をサポートするデフォルトの照合。 中国語以外の文字のソートは、元のソートキーの順序に基づきます。UPPER(ch)
が存在する場合、元のソートキーはGB(UPPER(ch))
です。 それ以外の場合、元のソートキーはGB(ch)
です。 中国語の文字は、Unicode 共通ロケールデータリポジトリ (CLDR 24) で定義されている Pinyin 照合順序に従ってソートされます。 中国語以外の文字は、コードポイントの最大値であるGB+FE39FE39
を除き、中国語の文字の前にソートされます。gb18030_unicode_520_ci
: Unicode 照合。 合字が正しくソートされていることを確認する必要がある場合は、この照合を使用します。