Tiene un desencadenador de nivel de fila PL/SQL de Oracle (10i) que es responsable de tres tareas independientes. Como el desencadenador está relativamente desordenado de esa manera, quiero exportar estas tres tareas en tres procedimientos almacenados. Estaba pensando en usar un parámetro my_table%ROWTYPE
o tal vez un tipo de colección para los procedimientos, pero mi principal preocupación es cómo llenar estos parámetros.Oracle PL/SQL: reenvío de toda la fila al procedimiento desde un desencadenador
¿Hay alguna manera de poner toda la fila :NEW
de un disparador en una sola variable fácilmente? Hasta ahora la única manera de que pudiera averiguar estaba asignando cada campo por separado a la variable que no es del todo satisfactoria, mirando el mantenimiento del código, etc.
Algo así como
SELECT :NEW.* INTO <variable> FROM dual;
sería preferible. (No lo he intentado realmente pero supongo que no funcionaría)
Lamentablemente, tengo que mantener el disparador ANTES DE I/U/D PARA CADA FILA para este código específico. Pero al afirmar que no es posible copiar toda la fila de una vez, respondió mi pregunta; supongo ;-) –