SQL Alter Table


SQL CREATE TABLE
SQL Constraint
SQL 主鍵
SQL 外來鍵
SQL CREATE VIEW
SQL CREATE INDEX
SQL ALTER TABLE
SQL DROP TABLE
SQL TRUNCATE TABLE
SQL INSERT INTO
SQL UPDATE
SQL DELETE FROM



網站導引
其他資源


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

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

以上列出的改變並不是所有可能的改變。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_Datedate

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

ALTER table customer add Gender char(1)

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

customer 表格
欄位名稱資料種類
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedate
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_Datedate
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_Datedate
Genderchar(1)

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

ALTER table customer drop Gender

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

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


下一頁:SQL DROP TABLE

網站導引   |   其他資源