各「文字」(CHAR
、VARCHAR
またはTEXT
型)にはカラムキャラクタセットとカラム照合順序があります。カラム定義構文には、カラムキャラクタセットとカラム照合順序を指定するためのオプション節があります。
col_name
{CHAR | VARCHAR | TEXT} (col_length
) [CHARACTER SETcharset_name
] [COLLATEcollation_name
]
例:
CREATE TABLE Table1 ( column1 VARCHAR(5) CHARACTER SET latin1 COLLATE latin1_german1_ci );
MySQL では、カラムキャラクタセットとカラム照合順序が次のように選択されます。
CHARACTER SET
とX
COLLATE
の両方を指定した場合は、キャラクタセットY
X
と照合順序Y
。
CHARACTER SET
を指定し、X
COLLATE
を指定しなかった場合は、キャラクタセットX
とそのデフォルト照合順序。
COLLATE
を指定し、Y
CHARACTER
SET
を指定しなかった場合は、Y
関連のキャラクタセットと照合順序Y
。
その他の場合は、テーブルキャラクタセットとテーブル照合順序。
CHARACTER
SET
およびCOLLATE
節は標準SQLです。