oracle高效率insert写法

Posted HyperWang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle高效率insert写法相关的知识,希望对你有一定的参考价值。

这里我们这边验证一个oracle非常规的高效率insert写法

--创建2个测试表hyper/hyperW
create table hyper  (a int);
create table hyperW (a int);
--插入100万条记录
--注意:此处耗时严重
declare i int:=1;
begin
  while i<=1000000 loop
  insert into hyper values(i);
  i:=i+1;
  end loop;
end
commit;

高效率插入100万数据

--高效率写法
--从表hyper查询并插入数据到hyperW(见下图0.2s)
alter table hyperW nologging; 

insert /*+ append */ into hyperW select * from hyper; 
commit
--打开归档日志
alter table hyperW logging;

以上是关于oracle高效率insert写法的主要内容,如果未能解决你的问题,请参考以下文章

oracle中的insert all写法

oracle的大量数据insert操作怎么提高效率?

oracle 大量数据insert操作怎么提高效率

ibatis使用iterate实现批量插入insert正确写法

ORACLE中高效SQL的写法

Oracle:高效插入大量数据经验之谈