Я хочу знать, есть ли в Oracle возможность каким-либо образом перенаправить элемент управления из блока исключений в текущий блок начала / конца.
Ниже приведен фрагмент кода. переменная i перебирает наборы данных таблицы, я хочу обновить таблицу i ;если есть какое-либо исключение, перейдите в блок исключений exec1 , выполните все действия и попробуйте обновить таблицу i снова.
Если управление переходит к exec2 исключение, затем переходите к следующей итерации.
Мне нужна помощь, поскольку после выполнения шагов в исключении exec1 , как я могу попробовать обновить таблицу (i) снова;так что если он снова не удастся, он будет обработан в exec1 блок исключений.
FOR i in c_tables
LOOP
BEGIN
---label---
Update (i);
DBMS_OUTPUT.PUT_LINE ('ROWS UPDATED IS: ' || SQL%ROWCOUNT);
EXCEPTION
WHEN exec1 THEN
BEGIN
do_stuff();
goto label;
EXCEPTION WHEN exec2 THEN
do_stuff();
continue;
END;
END;
END LOOP;