oracle中按指定條數批量處理的方法

oracle中按指定條數批量處理的方法

示例

--每處理10000條提交一次
loop
insert into t2
select * from t1 where rownum <= 10000;  --每次插入10000條
delete from t1 where rownum <= 10000;    --每次刪除10000條
v_rowcount := sql%rowcount;
commit;
exit when v_rowcount < 10000;      --如果提交條數小於10000,說明已經是最後一次處理
end loop;

 

附加sql%四種屬性說明
sql%NOTFOUND --update,delete操作時沒找到符合條件的記錄。
sql%FOUND --SELECT columnname INTO ,update,delete找到符合條件的記錄Top
sql%rowcount --判定當前更新記錄數
sql%isopen --判定當前遊標是否打開

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章