下面是幾種不同數據庫的升級腳本比較,實際上是對不同數據庫版本的ALTER命令用法的比較
約定:[]內的內容可有可無 1,修改字段類型[關鍵字:modify&alter] mysql: ALTER TABLE 表名 MODIFY [COLUMN] 字段名 字段類型定義; sqlserver: ALTER TABLE 表名 ALTER COLUMN 字段名 字段類型定義; [這裏在修改約束的時候需要用到專門的關鍵字CONSTRAINT] oracle: ALTER TABLE 表名 MODIFY ( 字段名 字段類型定義); [Oracle,修改類型時所改字段的數據必須爲空:] 2,增加和刪除字段 增加字段 ALTER TABLE 表名 ADD 字段名 字段類型定義; 刪除字段 mysql: ALTER TABLE 表名 DROP[COLUMN] 字段名 sqlserver: ALTER TABLE 表名 DROP COLUMN 字段名 3,修改列名 mysql: 可以用CHANGE同時修改列名和列類型,如: ALTER TABLE table CHANGE column newcolumn BIT NOT NULL 這裏column和newcolumn可以相同, 也就是說,CHANGE可以取代MODIFY了,可以用來單純修改列類型或者列名 sqlserver: 暫時只能調用存儲過程 EXEC SP_RENAME table.column','newcolumn','COLUMN' oracle: 在817版本以上支持RENAME了,沒有具體測試過,9i以上版本比較保險 ALTER TABLE table RENAME COLUMN column TO newcolumn; |
ALTER在不同數據庫的用法
ALTER在不同數據庫的用法
2007-12-28 12:01
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.