Triger
a la tabla COUNTRIES.
a. El trigger CONTROLA_PAISES debe detectar los eventos de Insert,
Update y Delete sobre latabla COUNTRIES
b. Después de insertar, actualizar o eliminar filas en la tabla
COUNTRIES el trigger debe mostrar el mensaje que se indica para el
evento gatillado
- Si el evento fue deinserción el mensaje debe ser 'El Trigger
Controla Paises se disparo al INSERTAR uno o más registros’
Si el evento fue de actualización el mensaje debe ser ' El Trigger
Controla Paises se disparo alMODIFICAR uno o más registros’
Si el evento fue de borrado mensaje debe ser ' El Trigger Controla
Paises se disparo al ELIMINAR uno o más registros’
CREATE OR REPLACE TRIGGER statement_levelBEFORE INSERT OR UPDATE OR DELETE
ON Countries
FOR EACH ROW
DECLARE
vmsg VARCHAR2(30) := 'Statement Level Trigger Fired';
BEGIN
IF INSERTING THEN
dbms_output.put_line(vMsg || ' OnInsert');
ELSIF UPDATING THEN
dbms_output.put_line(vMsg || ' On Update');
ELSIF DELETING THEN
dbms_output.put_line(vMsg || ' On Delete');
END IF;
END statement_level;
/* PROGRAMA PRINCIPAL QUEEJECUTA LA ACCION DEL TRIGGER*/
Set serveroutput on
DECLARE
nom countries.country_name%TYPE:=’&nom’;
id countries.country_id%TYPE:=’&id’;
BEGIN
UPDATE Countries SET country_name=nomWHERE country_id=id;
END;
/* Inserta una nueva tupla en la tabla*/
SET SERVEROUTPUT ON
DECLARE
id countries.country_id%TYPE:=’&id’;
nom countries.country_name%TYPE:=’&nom’;
regioncountries.region_id%TYPE:=®ion;
begin
INSERT INTO COUNTRIES
VALUES(id,nom,region);
END;
----------------------------------------------------------------
/* ELimina una tupla en la tabla*/
SETSERVEROUTPUT ON
DECLARE
id countries.country_id%TYPE:=’&id’;
begin
delete from countries
where country_id=id;
end;
Ojo
con las comillas, pues al ser en Word se deben cambiar
Regístrate para leer el documento completo.