Cita:
Iniciado por Angubas También puedes crear uno que guarde todo el registro:
CREATE OR REPLACE TRIGGER NOMBRE_TRIGGER
BEFORE INSERT
ON TABLA_A_AUDITAR
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
IF INSERTING THEN
INSERT INTO TABLA_AUDITORIA
(AUD_USER,
AUD_FECHA,
AUD_TIPO,
AUD_TERMINAL)
VALUES
(USER,
SYSDATE,
'INSERT',
USERENV('TERMINAL'));
END IF;
END;
Espero que te sirva.
si mi teoria no me falla
si estas creando un trigguer
BEFORE INSERT
no tendrias la necesidad de identificar que transaccion se esta llevando a cabo
IF INSERTING THEN
siempre caeria ese if, por lo tanto es innecesario
por otro lado no tengo la informacion fresca para confirmar si un BEFORE INSERT se dispara despues de validaciones internas de oracle, como violar llaves primarias, foraneas, etc pero yo usaria un AFTER INSERT para esto