前端之家收集整理的这篇文章主要介绍了
Oracle – 向表中添加列需要永远,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要将两个DATE列
添加到现有表中.但这需要很长时间,我必须杀死这个过程.奇怪的是我能够暂时将这些列
添加到同一
数据库中的其他表中.这些表中的大多数都比我在数据和列数方面都遇到问题的表大.我需要做些什么才能
添加这些新列?
这是我如何
解决问题.以前,我在
添加它们时正在为列指定默认值.但后来我首先
添加了没有默认值的列.
添加列后,我指定了默认值,并立即执行,不再等待.非常感谢@Justin Cave提供有关默认值的
提示.这是关键点.
我毫不怀疑这与以下事实有关:在添加列时指定默认值时,默认值将写入先前插入的所有记录.如果表中有500万条记录,该表将更新为为所有行的新添加列设置默认值.有人猜测,更新500万条记录的费用很高.但是,如果在添加列之后设置了默认值,那么之前插入的行中新列的值将为NULL,因此不会进行更新.
原文链接:https://www.f2er.com/oracle/205249.html