在表格被建立在資料庫中後,我們常常會發現,這個表格的結構需要有所改變。常見的改變如下:

  • 加一個欄位
  • 刪去一個欄位
  • 改變欄位名稱
  • 改變欄位的資料種類

以上列出的改變並不是所有可能的改變。ALTER TABLE 也可以被用來作其他的改變,例如改變主鍵定義。

ALTER TABLE 的語法如下:

ALTER TABLE "table_name"
[改變方式];

[改變方式] 的詳細寫法會依我們想要達到的目標而有所不同。再以上列出的改變中,[改變方式] 如下:

  • 加一個欄位: ADD "欄位 1" "欄位 1 資料種類"
  • 刪去一個欄位: DROP "欄位 1"
  • 改變欄位名稱: CHANGE "原本欄位名" "新欄位名" "新欄位名資料種類"
  • 改變欄位的資料種類: MODIFY "欄位 1" "新資料種類"

以下我們用在CREATE TABLE 一頁建出的 Customer 表格來當作例子:

Customer 表格
欄位名稱資料種類
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

第一,我們要加入一個叫做 "Gender" 的欄位。這可以用以下的指令達成:

ALTER TABLE Customer ADD Gender char(1);

這個指令執行後的表格架構是:

Customer 表格
欄位名稱資料種類
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime
Genderchar(1)

接下來,我們要把 "Address" 欄位改名為 "Addr"。這可以用以下的指令達成:

ALTER TABLE Customer CHANGE Address Addr char(50);

這個指令執行後的表格架構是:

Customer 表格
欄位名稱資料種類
First_Namechar(50)
Last_Namechar(50)
Addrchar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime
Genderchar(1)

再來,我們要將 "Addr" 欄位的資料種類改為 char(30)。這可以用以下的指令達成:

ALTER TABLE Customer MODIFY Addr char(30);

這個指令執行後的表格架構是:

Customer 表格
欄位名稱資料種類
First_Namechar(50)
Last_Namechar(50)
Addrchar(30)
Citychar(50)
Countrychar(25)
Birth_Datedatetime
Genderchar(1)

最後,我們要刪除 "Gender" 欄位。這可以用以下的指令達成:

ALTER TABLE Customer DROP Gender;

這個指令執行後的表格架構是:

Customer 表格
欄位名稱資料種類
First_Namechar(50)
Last_Namechar(50)
Addrchar(30)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

下一頁:SQL DROP TABLE



Copyright © 2017   1keydata.com   版權所有