oracle批量插入优化,oracle批量插入优化方案

本文介绍了Oracle数据库的批量插入优化方案,包括不写归档日志、采用独占模式以及使用`INSERT /*+ APPEND */`语句减少redo的产生。同时,文章提到了在非归档模式下使用`APPEND`的效果,并展示了实际的SQL操作示例。
摘要由CSDN通过智能技术生成

今天听DBA说如果从一个表批量查询出一批数据之后批量插入另外一张表的优化方案:

1)不写归档日志;

2)采用独占

关于insert /*+ append */我们需要注意以下三点:

a、非归档模式下,只需append就能大量减少redo的产生;归档模式下,只有append+nologging才能大量减少redo。

b、insert /*+ append */时会对表加锁(排它锁),会阻塞表上的除了select以外所有DML语句;

--不写日志设置

ALTER TABLE my_flosta_all_571 NOLOGGING;

insert /*+APPEND */ into my_flosta_all_571(OID,P_DAY,CITY,BUILDINGID,BUILDINGNAME,HASINDOOR)

select OID,to_date('','yyyyMMdd') as P_DAY,CITY,BUILDINGID,BUILDINGNAME,HASINDOOR

from my_flosta_all_571 where p_day=to_date('','yyyyMMdd');

commit;

insert /*+APPEND */ into my_flosta_all_571(OID,P_DAY,CITY,BUILDINGID,BUILDINGNAME,HASINDOOR)

select OID,to_date('','yyyyMMdd') as P_DAY,CITY,BUILDINGID,BUILDINGNAME,HASINDOOR

from my_flosta_all_571 wher

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值