You are on page 1of 2

==TRIGER INSERTAR==

DROP TRIGGER IF EXISTS after_insert_country;


DELIMITER $$
CREATE TRIGGER after_insert_country
AFTER INSERT ON country
FOR EACH ROW

BEGIN
insert into bitacora ( fecha, accion, executedSQL, reverseSQL )
values(now(),("insertar"),

CONCAT("INSERT INTO country (Code, Name, Population) VALUES (",NEW.Code,",


""",NEW.Name,""", ",NEW.Population,");"),
CONCAT("DELETE FROM country WHERE Id = ", NEW.Code,";")
);
END;
$$
DELIMITER ;

==TRIGGER BORRAR==
DROP TRIGGER IF EXISTS after_delete_country;
DELIMITER $$
CREATE TRIGGER after_delete_country
AFTER DELETE ON country
FOR EACH ROW

BEGIN
insert into bitacora( fecha, accion, executedSQL, reverseSQL )
values(
now(),("borrar"),

CONCAT("DELETE FROM country WHERE Id = ",OLD.Code,";"),


CONCAT("INSERT INTO city (Code, Name, Population) VALUES (",OLD.Code,",
""",OLD.Name,""", ",OLD.Population,");")
);
END;

$$
DELIMITER ;
==TRIGGER ACTUALIZAR==

DROP TRIGGER IF EXISTS after_update_country;


DELIMITER $$
CREATE TRIGGER after_update_country
AFTER UPDATE ON country
FOR EACH ROW
BEGIN
insert into bitacora( fecha, accion, executedSQL, reverseSQL)
values(
now(),("actualizar"),

CONCAT("UPDATE country SET Code = ",NEW.Code,", Name = """,NEW.Name,""",


Population = ",NEW.Population," WHERE Code = ", OLD.Code,";"),
CONCAT("UPDATE country SET Code = ",OLD.Code,", Name = """,OLD.Name,""",
Population = ",OLD.Population," WHERE Code = ", NEW.Code,";")
);
END;
$$
DELIMITER ;

You might also like