10.3.4.列字符集和校對
10.3.4. 列字符集和校對
每一個“字符”列(即,CHAR、VARCHAR或TEXT類型的列)有一個列字符集和一個列
校對規則,它不能為空。列定義語法有一個可選子句來指定列字符集和校對規則:
col_name {CHAR | VARCHAR | TEXT} (col_length)
[CHARACTER SET charset_name [COLLATE collation_name]]
例如:
CREATE TABLE Table1
(
column1 VARCHAR(5) CHARACTER SET latin1 COLLATE latin1_german1_ci
);
MySQL按照下面的方式選擇列字符集和校對規則:
· 如果指定了CHARACTER SET X和COLLATE Y,那么采用CHARACTER SET X和COLLATE Y。
· 如果指定了CHARACTER SET X而沒有指定COLLATE Y,那么采用CHARACTER SET X和CHARACTER SET X的默認校對規則。
· 否則,采用表字符集和服務器校對規則。
CHARACTER SET和COLLATE子句是標準的SQL。