直接路径插入

时间:2021-09-12 19:50:56

直接路径插入可以使用APPEND提示来调用(这是 并行插入的默认行为)。在ORACLE数据库11gR2版本中,有一个新的APPEND_VALUES提示可以用来直接指定要插入的值而不是通过select语句提供值的插入。
insert /*+append*/ into into kso.big_emp select * from hr.employees nologging;
insert /*+append_values+*/ into dual(dummy) values('Y');
然而快速方法有下面几个问题
1、在任何给定的时间点一张表只能有一个直接路径写入。
2、数据将被插入到高水位线之上,因此任何高水位线之下的可用空间都不能在直接路径插入中使用。
3、在开始之后进行插入的会话不能对表做任何事情(甚至是对其进行select),知道进行提交和回滚。
4、不支持一些不太常用的数据结构(对象类型、索引组织表等)。
5、不支持引用约束(也就是说他们将导致通过传统方法进行插入)。
不管怎样,你都要注意直接路径插入是仅为大数据量插入而设计的。