SQL ALTER TABLE 語句
ALTER TABLE 語句
ALTER TABLE 語句用於在已有的表中添加、刪除或修改列。
SQL ALTER TABLE 語法
如需在表中添加列,請使用下麵的語法:
ALTER TABLE table_name
ADD column_name datatype
ADD column_name datatype
如需刪除表中的列,請使用下麵的語法(請注意,某些資料庫系統不允許這種在資料庫表中刪除列的方式):
ALTER TABLE table_name
DROP COLUMN column_name
DROP COLUMN column_name
要改變表中列的數據類型,請使用下麵的語法:
SQL Server / MS Access:
ALTER TABLE table_name
ALTER COLUMN column_name datatype
ALTER COLUMN column_name datatype
My SQL / Oracle:
ALTER TABLE table_name
MODIFY COLUMN column_name datatype
MODIFY COLUMN column_name datatype
Oracle 10G 之後版本:
ALTER TABLE table_name MODIFY column_name datatype;
SQL ALTER TABLE 實例
請看 "Persons" 表:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
現在,我們想在 "Persons" 表中添加一個名為 "DateOfBirth" 的列。
我們使用下麵的 SQL 語句:
ALTER TABLE Persons
ADD DateOfBirth date
ADD DateOfBirth date
請注意,新列 "DateOfBirth" 的類型是 date,可以存放日期。數據類型規定列中可以存放的數據的類型。如需瞭解 MS Access、MySQL 和 SQL Server 中可用的數據類型,請訪問我們完整的 數據類型參考手冊。
現在,"Persons" 表將如下所示:
P_Id | LastName | FirstName | Address | City | DateOfBirth |
---|---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes | |
2 | Svendson | Tove | Borgvn 23 | Sandnes | |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
改變數據類型實例
現在,我們想要改變 "Persons" 表中 "DateOfBirth" 列的數據類型。
我們使用下麵的 SQL 語句:
ALTER TABLE Persons
ALTER COLUMN DateOfBirth year
ALTER COLUMN DateOfBirth year
請注意,現在 "DateOfBirth" 列的類型是 year,可以存放 2 位或 4 位格式的年份。
DROP COLUMN 實例
接下來,我們想要刪除 "Person" 表中的 "DateOfBirth" 列。
我們使用下麵的 SQL 語句:
ALTER TABLE Persons
DROP COLUMN DateOfBirth
DROP COLUMN DateOfBirth
現在,"Persons" 表將如下所示:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |