Crear Triggers
Tengo una tabla de 5 campos, a la que le agregue dos campos adicionales, uno de los campos se le debe insertar una secuencia que funguirá como PORQUE y el segundo campo se le debe insertar la fecha, ahora bien explico mi inconveniente, no puedo crear un trigger con la condición "AFTER INSERT" porque me da error de tabla mutante, esto es debido a que la tabla la tabla recibe UPDATE todo el día a cada instante.
No puedo crear un trigger con la condición "INSTEAD OF INSERT" porque no se puede utilizar en tablas sólo en vistas, y no me sirve de esta forma porque cuando los datos vengan de la aplicación a la base de datos (ORACLE 9i) me dará error por la falta de los 2 campos adicionaes que cree. Le coloco la estructura del trigger
CREATE OR REPLACE TRIGGER MI_TRIGGER
[AFTER/INSTEAD OF] INSERT ON MI_TABLA
FOR EACH ROW
BEGIN
INSERT INTO ESQUEMA.MI_TABLA
(Campo1, campo2, campo3, campo4, campo5, campo6, campo7)
values(
:NEW. CAMPO1,
:NEW. CAMPO2,
:NEW. CAMPO3,
:NEW. CAMPO4,
:NEW. CAMPO5,
MI_SECUENCIA.NEXTVAL,
SYSDATE);
COMMIT;
END MI_TRIGGER;
/
No puedo crear un trigger con la condición "INSTEAD OF INSERT" porque no se puede utilizar en tablas sólo en vistas, y no me sirve de esta forma porque cuando los datos vengan de la aplicación a la base de datos (ORACLE 9i) me dará error por la falta de los 2 campos adicionaes que cree. Le coloco la estructura del trigger
CREATE OR REPLACE TRIGGER MI_TRIGGER
[AFTER/INSTEAD OF] INSERT ON MI_TABLA
FOR EACH ROW
BEGIN
INSERT INTO ESQUEMA.MI_TABLA
(Campo1, campo2, campo3, campo4, campo5, campo6, campo7)
values(
:NEW. CAMPO1,
:NEW. CAMPO2,
:NEW. CAMPO3,
:NEW. CAMPO4,
:NEW. CAMPO5,
MI_SECUENCIA.NEXTVAL,
SYSDATE);
COMMIT;
END MI_TRIGGER;
/
1 respuesta
Respuesta de sindimad
1