Oracle官方文档中关于alter table add column有下面的描述
https://docs.oracle.com/cd/E11882_01/server.112/e25494/tables.htm#ADMIN11005
个人理解纯粹是添加新列带有默认值的,如果不带默认值的,应该非常快就完成了。之前生成库160G的表,添加新列不到1秒就完成。
下面简单测试了下:
1.25G的表执行alter table testadd add col1 varchar2(20),0.09s就完成了。
alter table testadd add col2 varchar2(20) default ‘xxxxx’ ,这个执行了41分钟,中间查看了Locked_mode为6
alter table testadd add col3 varchar2(20) default ‘xxxxx’ not null;这个只要0.18秒,这个相对于10g,11的新特性。
网上也有关于这方面的文章,可以参考
https://blog.csdn.net/tianlesoftware/article/details/7226893