como eu faço para ler e deletar uma mesma tabela commitando a cada 1000? fiz o bloco abaixo mas demora uma eternidade, ta demorando 65 minutos para cada um registro e a tabela tem 358.000 registro. alguém pode me ajudar?
SET SERVEROUTPUT ON
declare
cursor c_1 is
select CTRT_REF_NR
FROM TB1
WHERE BLK_CD = 'USA'
AND CTRT_REF_NR NOT IN (select ctrt_ref_nr from tb_ctrt_tmp);
V_CONT NUMBER := 0;
begin
for c_1_rec in c_1 loop
DELETE
FROM TB1
WHERE BLK_CD = 'USA'
AND CTRT_REF_NR = C_1_REC.CTRT_REF_NR;
V_CONT := V_CONT + 1;
IF V_CONT = 1000 THEN
COMMIT;
V_CONT := 0;
END IF;
end loop;
COMMIT;
end;