13.1.3.CREATEDATABASE語法
13.1.3. CREATE
DATABASE語法
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
[create_specification [, create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
| [DEFAULT] COLLATE collation_name
CREATE DATABASE用于創建數據庫,并進行命名。如果要使用CREATE DATABASE,您需要獲得數據庫CREATE權限。
有關合法數據庫名稱的規定列于9.2節,“數據庫、表、索引、列和別名”。如果存在數據庫,并且您沒有指定IF NOT EXISTS,則會出現錯誤。
create_specification選項用于指定數據庫的特性。數據庫特性儲存在數據庫目錄中的db.opt文件中。CHARACTER SET子句用于指定默認的數據庫字符集。COLLATE子句用于指定默認的數據庫整序。字符集和整序名稱在第10章:字符集支持中討論。
有些目錄包含文件,這些文件與數據庫中的表對應。MySQL中的數據庫的執行方法與這些目錄的執行方法相同。因為當數據庫剛剛被創建時,在數據庫中沒有表,所以CREATE DATABASE只創建一個目錄。這個目錄位于MySQL數據目錄和db.opt文件之下。
如果您手動在數據目錄之下創建一個目錄(例如,使用mkdir),則服務器會認為這是一個數據庫目錄,并在SHOW DATABASES的輸出中顯示出來。
也可以使用CREATE SCHEMA。
您還可以使用mysqladmin程序創建數據庫。請參見8.5節,“mysqladmin:用于管理MySQL服務器的客戶端”。