CREATE DATABASE db_name
[[DEFAULT] CHARACTER SET charset_name]
[[DEFAULT] COLLATE collation_name]
ALTER DATABASE db_name
[[DEFAULT] CHARACTER SET charset_name]
[[DEFAULT] COLLATE collation_name]
例如:
CREATE DATABASE db_name
DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
MySQL這樣選擇數據庫字符集和數據庫校對規則:
·如果指定了CHARACTER SET X和COLLATE Y,那麼采用字符集X和校對規則Y。
·如果指定了CHARACTER SET X而沒有指定COLLATE Y,那麼采用CHARACTER SET X和CHARACTER SET X的默認校對規則。
·否則,采用服務器字符集和服務器校對規則。
MySQL的CREATE DATABASE ... DEFAULT CHARACTER SET ...語法與標准SQL的CREATE SCHEMA ... CHARACTER SET ...語法類似。因此,可以在同一個MySQL服務器上創建使用不同字符集和 校對規則的數據庫。
如果在CREATE TABLE語句中沒有指定表字符集和校對規則,則使用數據庫字符集和校對規則作為默認值。它們沒有其它目的。
默認數據庫的字符集和校對規則可以用作character_set_database和 collation_database系統變量。無論何時默認數據庫更改了,服務器都設置這兩個變量的值。如果沒有 默認數據庫,這兩個變量與相應的服務器級別的變量(character_set_server和collation_server)具有相同的值。