首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 表結構變更:單條語句批量添加/刪除多列最佳語法

     編輯:Oracle 資料庫基礎

批量添加列 (ADD)

ALTER TABLE table_name ADD (
  col1 datatype [DEFAULT expr] [CONSTRAINT ...],
  col2 datatype,
  col3 datatype,
  ...
);

實戰範例

ALTER TABLE PI_BDSURL ADD (
  PROVINCECONFIRMRESULTSTATEID VARCHAR2(20),
  PROVINCECONFIRMRESULTSTATE   VARCHAR2(40),
  PROVINCECONFIRMATTITUDE      VARCHAR2(400),
  PROVINCECONFIRMER            VARCHAR2(20),
  PROVINCECONFIRMDATE          DATE
);

批量刪除列 (DROP)

ALTER TABLE table_name DROP (
  col1,
  col2,
  col3,
  ...
) [CASCADE CONSTRAINTS];

實戰範例

ALTER TABLE PI_BDSURL DROP (
  PROVINCECONFIRMRESULTSTATEID,
  PROVINCECONFIRMRESULTSTATE,
  PROVINCECONFIRMATTITUDE,
  PROVINCECONFIRMER,
  PROVINCECONFIRMDATE
);

關鍵提示

  • 括號 **必須成對**,列之間用逗號分隔。
  • CASCADE CONSTRAINTS 可選,自動刪除涉及該列的約束 (FK、CK 等),防止報錯中斷。
  • 12c+ 支持 DROP COLUMN ... ONLINE (需 Enterprise Edition),刪除過程中表可繼續 DML,無獨占鎖。
  • 大表刪列建議低峰期操作,並監控 UNDO/REDO 產生量。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved