Trigger
Un "trigger" (disparador o desencadenador) es un bloque de código que se ejecuta automáticamente cuando ocurre algún evento (como inserción, actualización o borrado) sobre una determinada tabla (o vista); es decir, cuando se intenta modificar los datos de una tabla (o vista) asociada al disparador. Sintaxis general para crear un disparador:
create or replace trigger NOMBREDISPARADOR MOMENTO-- before, after o instead of EVENTO-- insert, update o delete of CAMPOS-- solo para update on NOMBRETABLA NIVEL--puede ser a nivel de sentencia (statement) o de fila (for each row) when CONDICION--opcional begin CUERPO DEL DISPARADOR--sentencias end NOMBREDISPARADOR;
CREATE OR REPLACE TRIGGER TR_PRODUCTOS_01
AFTER INSERT ON PRODUCTOS
FOR EACH ROW
DECLARE
-- local variables
BEGIN
INSERT INTO PRECIOS_PRODUCTOS
(CO_PRODUCTO,PRECIO,FX_ACTUALIZACION)
VALUES
(:NEW.CO_PRODUCTO,100,SYSDATE);
END ;
CREATE TABLE UNIVERSIDAD ( ALUMNO NVARCHAR(50), ID INT PRIMARY KEY, TELEFONO INT );
SELECT * FROM UNIVERSIDAD CREATE TRIGGER INGRESAR_DATOS ON UNIVERSIDAD AFTER INSERT AS BEGIN DECLARE @ALUMNO NVARCHAR(50), @ID INT, @TELEFONO INT, IF @TELEFONO IS NULL PRINT'INGRESE EL TELEFONO' ROLLBACK TRANSACTION END
INSERT INTO UNIVERSIDAD(ALUMNO)VALUES('MAURICIO ZAMBRANO')