?
在使用MS SQL的時候,一般創建數據庫我們都習慣于使用CREATE DATABASE 來完成,而使用CREATE SCHEMA來創建架構,但是在MySQL中,官方的中文文檔在 CREATE DATABASE 語法一節中寫了一句:也可以使用CREATE SCHEMA。那么CREATE SCHEMA和CREATE DATABASE在MySQL難道是一樣的嗎?
MySQL 5.0官方的英文文檔中有這么一句:
1 2 3 | CREATE DATABASE creates a database with the given name. To use this statement, you need the CREATE privilege for the database. CREATE SCHEMA is a synonym for CREATE DATABASE as of MySQL 5.0.2. |
?這個說法譯成中文應該是:CREATE DATABASE根據給定的名稱創建數據庫,要用這個語法,你需要有數據庫的CREATE權限,CREATE SCHEMA從MySQL5.0.2起,可作為CREATE DATABASE的一個代名詞。
按照這個說法,CREATE SCHEMA是和CREATE DATABASE是一樣的,為了驗證這個說法,參閱了后繼的官方文檔,在MySQL5.5的英文文檔中,官方如是說:
1 2 3 | CREATE DATABASE creates a database with the given name. To use this statement, you need the CREATE privilege for the database. CREATE SCHEMA is a synonym for CREATE DATABASE. |
?中文:CREATE DATABASE根據給定的名稱創建數據庫,你需要擁有數據庫的CREATE權限來使用這個語句。CREATE SCHEMA是CREATE DATABASE的一個代名詞。
由此可見,在MySQL的語法操作中(MySQL5.0.2之后),可以使用CREATE DATABASE和CREATE SCHEMA來創建數據庫,兩者在功能上是一致的。在使用MySQL官方的MySQL管理工具MySQL Workbench 5.2.47創建數據庫時,使用的是CREATE SCHEMA來創建數據庫的。而這和MS SQL中的SCHEMA有很大差別。