1、脚本如下:
--分批提交脚本
declare
Type v_rowid is table of varchar2(100) index by binary_integer; --定义rowid类型
var_rowid v_rowid; --定义rowid变量
cursor v_cur is
select ROWID FROM t3;
BEGIN
OPEN v_cur;
loop
FETCH v_cur BULK COLLECT
INTO var_rowid LIMIT 5000;
FORALL i IN 1 .. var_rowid.count
insert into t2 select * from t3 where ROWID = var_rowid(i);
COMMIT;
EXIT WHEN v_cur%NOTFOUND OR v_cur%NOTFOUND IS NULL;
END LOOP;
CLOSE v_cur;
end;
2、脚本说明:
脚本中t2表为插入的目标表,t3为源表。每次提交5000条数据。