0

我对甲骨文很陌生。我目前的情况是我需要添加一个 NOT NULL 列并将其值更新为“EE”。这是使用以下脚本完成的。

ALTER TABLE CSA.CSA_CALL_AUDIT ADD CSA_CALL_TYPE varchar2(10);
update CSA.CSA_CALL_AUDIT set CSA_CALL_TYPE = 'EE';
ALTER table CSA.CSA_CALL_AUDIT modify CSA_CALL_TYPE not null;

我的要求是一次只更新 1000 条记录。该表总共有 39000 条记录。

4

1 回答 1

0

IFEE是默认值,这是进行此更改的最具表现力的方式:

ALTER TABLE CSA.CSA_CALL_AUDIT ADD CSA_CALL_TYPE varchar2(10)
      default 'EE' not null;

Oracle 在数据字典中做了一些神奇的事情,根本不涉及行。(至少在 11g 及更高版本中,不确定他们是否更早地引入了此增强功能。)

但不管怎样,39000 条记录并不是大量的记录。如果您需要发出实际的 UPDATE 只需使用一条语句。不会花很长时间。

于 2017-03-14T17:20:09.667 回答