MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む

このページは機械翻訳したものです。

10.3.5 カラム文字セットおよび照合順序

すべての「文字型」カラム (CHARVARCHARTEXT 型またはシノニム型のカラム) には、カラム文字セットおよびカラム照合順序があります。 CREATE TABLE および ALTER TABLE のカラム定義構文には、カラム文字セットおよび照合順序を指定するためのオプション句があります。

col_name {CHAR | VARCHAR | TEXT} (col_length)
    [CHARACTER SET charset_name]
    [COLLATE collation_name]

これらの句は、ENUM および SET カラムにも使用できます。

col_name {ENUM | SET} (val_list)
    [CHARACTER SET charset_name]
    [COLLATE collation_name]

例:

CREATE TABLE t1
(
    col1 VARCHAR(5)
      CHARACTER SET latin1
      COLLATE latin1_german1_ci
);

ALTER TABLE t1 MODIFY
    col1 VARCHAR(5)
      CHARACTER SET latin1
      COLLATE latin1_swedish_ci;

MySQL では、カラム文字セットとカラム照合順序が次のように選択されます。

CHARACTER SET および COLLATE 句は標準 SQL です。

ALTER TABLE を使用して、ある文字セットから別の文字セットにカラムを変換する場合、MySQL はデータ値をマップしようとしますが、文字セットに互換性がない場合、データの損失が生じる可能性があります。