ALTER TABLE語句用於修改已經存在的表的設計。
文法:ALTER TABLE table ADD COLUMN field type[(size)] [NOT NULL] [CONSTRAINT index]
ALTER TABLE table ADD CONSTRAINT multifieldindex
ALTER TABLE table DROP COLUMN field
ALTER TABLE table DROP CONSTRAINT indexname
說明:table參數用於指定要修改的表的名稱。
ADD COLUMN為SQL的保留字,使用它將向表中添加欄位。
ADD CONSTRAINT為SQL的保留字,使用它將向表中添加索引。
DROP COLUMN為SQL的保留字,使用它將向表中刪除欄位。
DROP CONSTRAINT為SQL的保留字,使用它將向表中刪除索引。
field指定要添加或刪除的欄位的名稱。
type參數指定建立欄位的資料類型。
size參數用於指定文本或二進位欄位的長度。
indexname參數指定要刪除的多重欄位索引的名稱。
用sql*plus或第三方可以運行sql語句的程式登入資料庫:
- ALTER TABLE (表名) ADD (列名 資料類型);
- ALTER TABLE (表名) MODIFY (列名 資料類型);
- ALTER TABLE (表名) RENAME COLUMN (當前列名) TO (新列名);
- ALTER TABLE (表名) DROP COLUMN (列名);
- ALTER TABLE (當前表名) RENAME TO (新表名);
如:
Alter Table Employ Add (weight Number(38,0)) ;Alter Table Employ Modify (weight Number(13,2)) ;
Alter Table Emp Rename Cloumn weight To weight_new ;
ALTER TABLE emp DROP COLUMN weight_new ;
ALTER TABLE bouns RENAME TO bonus_new;
增加一個列:
ALTER TABLE 表名 ADD(列名 資料類型);
如:
ALTER TABLE emp ADD(weight NUMBER(38,0));
修改一個列的資料類型(一般限於修改長度,修改為一個不同類型時有諸多限制):
ALTER TABLE 表名 MODIFY(列名 資料類型);
如:
ALTER TABLE emp MODIFY(weight NUMBER(3,0) NOT NULL);
給列改名:
ALTER TABLE 表名 RENAME COLUMN 當前列名 TO 新列名;
如:
ALTER TABLE emp RENAME COLUMN weight TO weight_new;
刪除一個列:
ALTER TABLE 表名 DROP COLUMN 列名;
如:
ALTER TABLE emp DROP COLUMN weight_new;
將一個表改名:
ALTER TABLE 當前表名 RENAME TO 新表名;
如:
ALTER TABLE bouns RENAME TO bonus_new