Consejos para principiantes: Cómo escribir un procedimiento almacenado de Oracle usando el CURSOR y un bucle para lograr: Si se usa un bucle, aparecerá un informe de excepción -O
CURSOR c1 es
seleccione empno, ename de emp;
t_c1 c1%rowtype;
err anormal.
comenzar
abrir c1;
bucle
FETCH c1
INTO t_c1;
si (c1% encontrado) entonces
insertar en emp_test (empno, ename) valores (t_c1.empno, t_c1.ename
confirmar
);else
elevar error (este error debe definirse de antemano, el tipo es excepción)
end if;
end loop;
cerrar c1;
EXCEPCIÓN
cuando errar entonces
(Puedes agregar cualquier sugerencia aquí)
CUANDO OTROS ENTONCES
p>rollback;
end;
La ventaja de esto es que cuando ocurre un error dentro del bucle, puedes saltar directamente a la excepción. .
Cuando ocurre un error, saltará directamente al error en la excepción sin interrumpir la ejecución del código.
Arriba dijo que no es posible poner la excepción en un bucle. Lo principal es modificar la excepción y no revertirla, de lo contrario definitivamente no se ejecutará. Si tiene alguna pregunta, continúe la discusión.