MySQLサーバでは複数のキャラクタセットがサポートされています。利用可能なキャラクタセットは、SHOW
CHARACTER
SET
ステートメントを実行するとリストアップされます。リストの一部を以下に表示します。さらに詳しい情報が必要な場合は、次を参照してください。項9.10. 「MySQL でサポートされるキャラクタセットと照合順序」。
mysql> SHOW CHARACTER SET;
+----------+-----------------------------+---------------------+--------+
| Charset | Description | Default collation | Maxlen |
+----------+-----------------------------+---------------------+--------+
| big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 |
| dec8 | DEC West European | dec8_swedish_ci | 1 |
| cp850 | DOS West European | cp850_general_ci | 1 |
| hp8 | HP West European | hp8_english_ci | 1 |
| koi8r | KOI8-R Relcom Russian | koi8r_general_ci | 1 |
| latin1 | cp1252 West European | latin1_swedish_ci | 1 |
| latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |
| swe7 | 7bit Swedish | swe7_swedish_ci | 1 |
| ascii | US ASCII | ascii_general_ci | 1 |
| ujis | EUC-JP Japanese | ujis_japanese_ci | 3 |
| sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 |
| hebrew | ISO 8859-8 Hebrew | hebrew_general_ci | 1 |
| tis620 | TIS620 Thai | tis620_thai_ci | 1 |
| euckr | EUC-KR Korean | euckr_korean_ci | 2 |
| koi8u | KOI8-U Ukrainian | koi8u_general_ci | 1 |
| gb2312 | GB2312 Simplified Chinese | gb2312_chinese_ci | 2 |
| greek | ISO 8859-7 Greek | greek_general_ci | 1 |
| cp1250 | Windows Central European | cp1250_general_ci | 1 |
| gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 |
| latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 |
...
キャラクタセットには少なくとも1つの照合順序が含まれており、複数の照合順序が含まれていることもあります。あるキャラクタセットに対して存在する照合順序をリストアップするには、SHOW
COLLATION
ステートメントを実行してください。例えば、キャラクタセットlatin1
(cp1252
西ヨーロッパ言語)に含まれる照合順序を調べるには、このステートメントを実行するとlatin1
で始まる照合順序が見つかります。
mysql> SHOW COLLATION LIKE 'latin1%';
+---------------------+---------+----+---------+----------+---------+
| Collation | Charset | Id | Default | Compiled | Sortlen |
+---------------------+---------+----+---------+----------+---------+
| latin1_german1_ci | latin1 | 5 | | | 0 |
| latin1_swedish_ci | latin1 | 8 | Yes | Yes | 1 |
| latin1_danish_ci | latin1 | 15 | | | 0 |
| latin1_german2_ci | latin1 | 31 | | Yes | 2 |
| latin1_bin | latin1 | 47 | | Yes | 1 |
| latin1_general_ci | latin1 | 48 | | | 0 |
| latin1_general_cs | latin1 | 49 | | | 0 |
| latin1_spanish_ci | latin1 | 94 | | | 0 |
+---------------------+---------+----+---------+----------+---------+
latin1
の照合順序には以下の意味があります:
照合順序 | 意味 |
latin1_german1_ci |
ドイツ語 DIN-1 |
latin1_swedish_ci |
スウェーデン語/フィンランド語 |
latin1_danish_ci |
デンマーク語/ノルウェー語 |
latin1_german2_ci |
ドイツ語 DIN-2 |
latin1_bin |
latin1 エンコードに基づくバイナリ |
latin1_general_ci |
マルチリンガル(西ヨーロッパ言語) |
latin1_general_cs |
マルチリンガル(ISO 西ヨーロッパ言語)大文字と小文字が区別される |
latin1_spanish_ci |
現代スペイン語 |
照合順序にはこれらの一般的な特徴があります。
2 つの異なるキャラクタセットが同じ照合順序を共有することはできません。
各キャラクタセットには、デフォルト照合順序が1つ存在します。例えば、latin1
のデフォルト照合順序はlatin1_swedish_ci
です。SHOW
CHARACTER
SET
から、どの照合順序が表示されているどのキャラクタセットのデフォルトであるかがわかります。
照合順序名には次の規則が適用されます。関連するキャラクタセットの名前で始まる。通常は言語名が含まれており、_ci
(大文字と小文字が区別されない)、_cs
(大文字と小文字が区別される)、_bin
(バイナリ)のいずれかで終わる。