Мне нравится этот способ обновления, когда мне приходится периодически делать коммиты, чтобы избежать проблем с откатом / повтором
число строк sql% будет содержать количество обновленных строк, когда оно достигнет 0, вы знаете, что все ваши строки имеютбыло обновлено
Значение rownum <1000 является лишь примером. Вы можете увеличить его в зависимости от размера отката / повторного выполнения </p>
, чтобы пройти через таблицу для каждого цикла, поэтому попробуйтеэто большее число, если вы можете
begin
loop
update x set yyy=zzz where bb=cc and rownum < 1000;
exit when sql%rowcount = 0;
commit;
end loop;
commit;
end;
/