oracle數據向歷史表數據遷移————procedure


create or replace procedure remove_refund_his_pro is
begin
declare
cursor refund_query_cur is
select rowid from ucmp_realtime_refund_query t1
where t1.apply_tm<= TRUNC(ADD_MONTHS(SYSDATE, -3),'DD') AND ROWNUM <= '100000000';
TYPE rowid_table_type is table of rowid index by pls_integer;
v_rowid rowid_table_type;
begin
open refund_query_cur;
loop
fetch refund_query_cur bulk collect into v_rowid limit 100000;
exit when v_rowid.count=0;
forall i in v_rowid.first .. v_rowid.last
INSERT INTO HIS_REALTIME_REFUND_QUERY
(SELECT * FROM UCMP_REALTIME_REFUND_QUERY
WHERE rowid = v_rowid(i));
forall j in v_rowid.first .. v_rowid.last
DELETE FROM UCMP_REALTIME_REFUND_QUERY
WHERE rowid = v_rowid(j);
commit;
end loop;
close refund_query_cur;
end;
end remove_refund_his_pro;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM