SQL 資料表 欄位 增加/刪除/更名 欄位
SQL 資料表 欄位 增加/刪除/更名欄位
資料來源:http://www.1keydata.com/tw/sql/sql-alter-table.html
以上列出的改變並不是所有可能的改變。ALTER TABLE 也可以被用來作其他的改變,例如改變主鍵定義。
ALTER TABLE 的語法如下:
ALTER TABLE “table_name”
[改變方式];
[改變方式] 的詳細寫法會依我們想要達到的目標而有所不同。再以上列出的改變中,[改變方式] 如下:
- 加一個欄位: ADD “欄位 1” “欄位 1 資料種類”
- 刪去一個欄位: DROP “欄位 1”
- 改變欄位名稱: CHANGE “原本欄位名” “新欄位名” “新欄位名資料種類”
- 改變欄位的資料種類: MODIFY “欄位 1” “新資料種類”
以下我們用在CREATE TABLE 一頁建出的 Customer 表格來當作例子:
Customer 表格
欄位名稱 |
資料種類 |
First_Name |
char(50) |
Last_Name |
char(50) |
Address |
char(50) |
City |
char(50) |
Country |
char(25) |
Birth_Date |
datetime |
第一,我們要加入一個叫做 “Gender” 的欄位。這可以用以下的指令達成:
ALTER TABLE Customer ADD Gender char(1);
這個指令執行後的表格架構是:
Customer 表格
欄位名稱 |
資料種類 |
First_Name |
char(50) |
Last_Name |
char(50) |
Address |
char(50) |
City |
char(50) |
Country |
char(25) |
Birth_Date |
datetime |
Gender |
char(1) |
接下來,我們要把 “Address” 欄位改名為 “Addr”。這可以用以下的指令達成:
ALTER TABLE Customer CHANGE Address Addr char(50);
這個指令執行後的表格架構是:
Customer 表格
欄位名稱 |
資料種類 |
First_Name |
char(50) |
Last_Name |
char(50) |
Addr |
char(50) |
City |
char(50) |
Country |
char(25) |
Birth_Date |
datetime |
Gender |
char(1) |
再來,我們要將 “Addr” 欄位的資料種類改為 char(30)。這可以用以下的指令達成:
ALTER TABLE Customer MODIFY Addr char(30);
這個指令執行後的表格架構是:
Customer 表格
欄位名稱 |
資料種類 |
First_Name |
char(50) |
Last_Name |
char(50) |
Addr |
char(30) |
City |
char(50) |
Country |
char(25) |
Birth_Date |
datetime |
Gender |
char(1) |
最後,我們要刪除 “Gender” 欄位。這可以用以下的指令達成:
ALTER TABLE Customer DROP Gender;
這個指令執行後的表格架構是:
Customer 表格
欄位名稱 |
資料種類 |
First_Name |
char(50) |
Last_Name |
char(50) |
Addr |
char(30) |
City |
char(50) |
Country |
char(25) |
Birth_Date |
datetime |