Documentos de Académico
Documentos de Profesional
Documentos de Cultura
--Trigger
CREATE OR REPLACE TRIGGER parcial2 BEFORE INSERT ON actua FOR EACH ROW
DECLARE
--Variable para guardar cantidad de premios
v_numPremios NUMBER:=0;
v_idPaisPelicula NUMBER;
v_idPaisRep NUMBER;
--Tabla anidada
TYPE tablaRepresentantes IS TABLE OF representante.rep_id%TYPE;
v_tablaRepresentantes tablaRepresentantes;
BEGIN
IF v_numPremios = 0 THEN
--Capturando el id del pais de esa película
SELECT pelicula.pai_id INTO v_idPaisPelicula FROM pelicula WHERE pelicula.pel_id
= :NEW.pel_id;
--Capturando los id de los paises de los representantes de los actores de esta
película
--SELECT representante.pai_id BULK COLLECT INTO v_tablaRepresentantes FROM actua,
actor, pelicula,representante
--WHERE actua.act_id = actor.act_id AND actua.pel_id = pelicula.pel_id AND
actor.rep_id = representante.rep_id
--AND pelicula.pel_id = :NEW.pel_id;
--Capturando el ID del pais del representante del actor que se quiere vincular a la
película
SELECT representante.pai_id INTO v_idPaisRep FROM actor, representante WHERE
actor.rep_id = representante.rep_id AND actor.act_id = 5;
--END IF;
--END LOOP;
END;
--Test
SET SERVEROUTPUT ON;
insert into ACTUA (PEL_ID, ACT_ID, SALARIO, NUM_CONTRATO) values (4, 1, 2000000,
120);