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