看到这篇文章Beware of default values when using CTAS,关于create table as select (CTAS)值得注意的地方:使用这条sql创建的表不会带默认值。
如上面的文章中所说,可以在创建表之后,修改默认值:
alter table t2 modify (id number default (0));
或者在创建的语句里给列加上默认值
create table t2(id default 1) as select * from t1;
然后查询了一下文档(11gr1),关于 AS subquery 里面叙述到
|
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23650854/viewspace-697781/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23650854/viewspace-697781/
本文探讨了在Oracle中使用CREATE TABLE AS SELECT (CTAS)时,默认值和约束的应用问题。CTAS创建的新表不会继承原表的默认值,但会自动携带原表显式定义的NOT NULL约束。此外,文章还介绍了如何手动设置新表的默认值。
3680

被折叠的 条评论
为什么被折叠?



