是通过查询,然后根据查询的结果来建立表格的一种方式,显然通过这种方式可以省去定义表结构的方法,而且在创建表的同时导入数据。不过在使用这个方法的时候,
1,ctas与create table后insert语句产生的redo是差不多的。
2,ctas生成的undo远远小于create table and insert方式。
3,ctas生成的undo与create table后insert /*+ append */差不多。
4,ctas nologging方法生成的log远远小于其它的方式。
5,append方式并不一定能减少redo的生成,但是肯定能减少undo的生成。
6,append减少redo,前提是表在nologging方式下面,注意这里表上面没有索引,append只对表有效,对索引无效。
create table scott.test_ctas_nologging nologging as select * from dba_objects;
insert /*+ append */ into scott.test_normal_append nologging select * from dba_object;
-----查询redo ,undo
SELECT a.name, b.value
FROM v$sysstat a, v$mystat b
WHERE a.statistic#= b.statistic#
AND a.name IN( 'redo size', 'undo change vector size' ) ;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




