在mysql中可以使用“CREATE table”語法來創建數據表,語法格式“CREATE TABLE ([表定義選項])[表選項][分區選項];”,其中“[表定義選項]”的格式為“列名1 類型1 [,…] 列名n 類型n”。
(推薦教程:mysql視頻教程)
在 MySQL 中,可以使用 CREATE TABLE 語句創建表。其語法格式為:
CREATE?TABLE??([表定義選項])[表選項][分區選項];
其中,[表定義選項]的格式為:
??[,…]??
CREATE TABLE 命令語法比較多,其主要是由表創建定義(create-definition)、表選項(table-options)和分區選項(partition-options)所組成的。
這里首先描述一個簡單的新建表的例子,然后重點介紹 CREATE TABLE 命令中的一些主要的語法知識點。
CREATE TABLE 語句的主要語法及使用說明如下:
-
CREATE TABLE:用于創建給定名稱的表,必須擁有表CREATE的權限。
-
:指定要創建表的名稱,在 CREATE TABLE 之后給出,必須符合標識符命名規則。表名稱被指定為 db_name.tbl_name,以便在特定的數據庫中創建表。無論是否有當前數據庫,都可以通過這種方式創建。在當前數據庫中創建表時,可以省略 db-name。如果使用加引號的識別名,則應對數據庫和表名稱分別加引號。例如,’mydb’.’mytbl’ 是合法的,但 ‘mydb.mytbl’ 不合法。
-
:表創建定義,由列名(col_name)、列的定義(column_definition)以及可能的空值說明、完整性約束或表索引組成。
-
默認的情況是,表被創建到當前的數據庫中。若表已存在、沒有當前數據庫或者數據庫不存在,則會出現錯誤。
提示:使用 CREATE TABLE 創建表時,必須指定以下信息:
要創建的表的名稱不區分大小寫,不能使用SQL語言中的關鍵字,如DROP、ALTER、INSERT等。
數據表中每個列(字段)的名稱和數據類型,如果創建多個列,要用逗號隔開。
在指定的數據庫中創建表
數據表屬于數據庫,在創建數據表之前,應使用語句“USE”指定操作在哪個數據庫中進行,如果沒有選擇數據庫,就會拋出 No database selected 的錯誤。
示例
創建員工表 tb_emp1,結構如下表所示。
選擇創建表的數據庫 test_db,創建 tb_emp1 數據表,輸入的 SQL 語句和運行結果如下所示。
mysql>?USE?test_db; Database?changed mysql>?CREATE?TABLE?tb_emp1 ????->?( ????->?id?INT(11), ????->?name?VARCHAR(25), ????->?deptId?INT(11), ????->?salary?FLOAT ????->?); Query?OK,?0?rows?affected?(0.37?sec)
語句執行后,便創建了一個名稱為 tb_emp1 的數據表,使用 SHOW TABLES;語句查看數據表是否創建成功,如下所示。
mysql>?SHOW?TABLES; +--------------------+ |?Tables_in_test_db??| +--------------------+ |?tb_emp1????????????| +--------------------+ 1?rows?in?set?(0.00?sec)