MySQL - CREATE TABLE 語句



MySQL CREATE TABLE 語句

CREATE TABLE 語句用於在 MySQL 資料庫中建立表。在這裡,您需要指定表名以及每個列的定義(名稱和資料型別)。

語法

以下是如何在 MySQL 中建立表的語法:

CREATE TABLE [IF NOT EXISTS] table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
);

其中,`table_name` 是您需要建立的表名,`column1`,`column2`,`column3`,……,`columnN` 是列名,`datatype` 是各個列的資料型別名稱。

示例

以下查詢建立一個名為 Employee 的表:

CREATE TABLE Employee(
   Name VARCHAR(255),
   Salary INT NOT NULL,
   Location VARCHAR(255)
);

如果建立成功,SHOW TABLES 語句會顯示當前資料庫中的表列表,您可以在其中看到上面建立的表名。

show tables;

輸出

以上查詢產生以下輸出:

Tables_in_sample
employee

IF NOT EXISTS 子句

如果您嘗試建立與現有表同名的表,則會生成錯誤:

CREATE TABLE Employee(Name VARCHAR(255));
ERROR 1050 (42S01): Table 'employee' already exists

如果您在 CREATE 語句中使用 **IF NOT EXISTS** 子句,如下所示,則會建立一個新表;如果已存在具有給定名稱的表,則該查詢將被忽略。

CREATE TABLE Test(Name VARCHAR(255));

使用現有表建立表

您還可以使用現有表(具有相同的定義)來建立表,以下是執行此操作的語法:

CREATE TABLE [IF NOT EXISTS] table_name {LIKE old_table_name}

其中,`table_name` 是您需要建立的表名,`old_table_name` 是您需要從中建立新表的表名。

示例

以下查詢建立名為 sample 的新表,與 Employee 表相同。

CREATE TABLE sample LIKE Employee;

您也可以使用 DESC 語句驗證上面建立的表。

DESC sample;

輸出

以下是上述程式的輸出:

欄位 型別 NULL 預設值 額外
姓名 varchar(255) YES NULL
薪水 int NO NULL
地點 varchar(255) YES NULL
廣告
© . All rights reserved.