将字段修改为可为空可永久运行

时间:2017-11-21 16:42:27

标签: oracle oracle11g

当我尝试更改字段以接受空值时,命令永远不会结束。这很奇怪,因为执行另一个类似的命令没有问题。

ALTER TABLE "MYTABLE" MODIFY ("A" NULL); -- ok
ALTER TABLE "MYTABLE" MODIFY ("B" NULL); -- runs forever (freezed?)
  • “A”和“B”具有相同的结构:“NUMBER(1)”,DEFAULT 0,NOT NULL,CHECK(in(0,1))。两者都有索引。
  • “MYTABLE”表有100M记录。
  • 目前没有对数据库进行访问(没有并行查询或其他锁定)。
  • 我正在使用Oracle 11g。

我认为更改字段以接受空值应该是一项快速任务。我不知道为什么要永远奔跑,只是在一个领域。有谁知道可能会发生什么?

感谢。

0 个答案:

没有答案