每一個表有一個表字符集和一個校對規則,它不能為空。為指定表字符集和校對規則,CREATE TABLE 和ALTER TABLE語句有一個可選的子句:
例如:
MySQL按照下面的方式選擇表字符集和 校對規則:
·如果指定了CHARACTER SET X和COLLATE Y,那麼采用CHARACTER SET X和COLLATE Y。
·如果指定了CHARACTER SET X而沒有指定COLLATE Y,那麼采用CHARACTER SET X和CHARACTER SET X的默認校對規則。
·否則,采用服務器字符集和服務器校對規則。
如果在列定義中沒有指定列字符集和校對規則,則默認使用表字符集和校對規則。表字符集和校對規則是MySQL的擴展;在標准SQL中沒有。