Cómo manejar un Trigger

V?or
07 de Junio del 2004
Quiero lanzar un trigger cuando inserto una tupla en una tabla y dentro de ese trigger quiero manejar los datos de la tupla que inserto. Quisiera saber cómo acceder a los datos de ese registro que inserto, comandos que debo usar, o lo que sea.
Gracias de antemano por vuestra ayuda.

Rodolfo Reyes
07 de Junio del 2004
Aqui te envío un ejemplo:

create or replace trigger "prueba".TRIG_INSERT
BEFORE INSERT ON prueba.EMPLEADOS REFERENCING NEW AS NEW FOR EACH ROW


BEGIN

--Declaracion de variables
DECLARE
O_BONIF_ANUAL NUMBER(11,2);
O_POR_ASIG_ANUAL NUMBER(5,2);
O_MTO_BONI_ADIC NUMBER(11,2);
N_BONIF_ANUAL NUMBER(11,2);
N_POR_ASIG_ANUAL NUMBER(5,2);
N_MTO_BONI_ADIC NUMBER(11,2);
BEGIN

--Inserta en una tabla temporal los valores "nuevos" que se esta
INSERT INTO PRUEBA.EMPLEADOS_TEMPORAL VALUES(nivel,ocupacion,cia,empleado
(:NEW.CODNIVEL,:NEW.CODOCUPACION,:NEW.CODCIA_EMP:NEW.CODEMPLEADO)


--Calcula el sueldo del empleado y lo almacena en el Historico
prueba.calcula_sueldo(:NEW.CODEMPLEADO);


--Elimina el registro de la tabla temporal
DELETE FROM PRUEBA.EMPLEADOS_TEMPORAL
WHERE CODEMPLEADO = :NEW.CODEMPLEADO;
END;
END;


Espero que te ayude.

carlos
07 de Junio del 2004
busca en google la palabra "disparadores"

debes de encontrar entre otros lo sgte:
[PDF] DISPARADORES EN SQL (II)
Formato de archivo: PDF/Adobe Acrobat - Versión en HTML
Page 1. DISPARADORES EN SQL (II) MODELOS AVANZADOS DE BASES DE DATOS Page 2. ... Las
tablas mutantes sólo deben aparecen en disparadores con nivel de fila. ...
alarcos.inf-cr.uclm.es/doc/bbddavanzadas/ practivasII.pdf - Páginas similares

[PDF] DISPARADORES EN SQL (I)
Formato de archivo: PDF/Adobe Acrobat - Versión en HTML
DISPARADORES EN SQL (I) MODELOS AVANZADOS DE BASES DE DATOS ... Ambos valores pueden
aplicarse tanto para disparadores a nivel de fila como a nivel de orden. ...
alarcos.inf-cr.uclm.es/doc/bbddavanzadas/ practivasI.pdf - Páginas similares
[ Más resultados de alarcos.inf-cr.uclm.es ]