martes, 19 de noviembre de 2019

USO DE TRIGGERS

USE empresa;

CREATE TABLE BitacoraProductos(
IdBP INT (30) auto_increment primary key,
IdProductos INT(20),
NombreProducto_Nuevo varchar(30),
NombreProducto_Viejo varchar(30),
TipoProducto_Nuevo varchar(30),
TipoProducto_Viejo varchar(30),
PrecioProducto_Nuevo varchar(30),
PrecioProducto_Viejo varchar(30),
Usuario varchar(30),
Fecha datetime,
Accion varchar(15)) engine=innodb;


CREATE TRIGGER InsertarProductos AFTER INSERT
ON productos
FOR EACH ROW
INSERT INTO BitacoraProductos(IdProductos,NombreProducto_Nuevo,TipoProducto_Nuevo,PrecioProducto_Nuevo,Usuario,Fecha,Accion)
VALUES(NEW.IdProductos,NEW.NombreProducto,NEW.TipoProducto,NEW.PrecioProducto,USER(),NOW(),'Inserto');

DROP TRIGGER InsertarProductos;

SELECT * FROM productos;

SELECT * FROM BitacoraProductos;











Modificar:
CREATE TRIGGER ModificarProductos AFTER UPDATE
ON productos
FOR EACH ROW
INSERT INTO BitacoraProductos(IdProductos,NombreProducto_Nuevo,NombreProducto_Viejo,TipoProducto_Nuevo,TipoProducto_Viejo,PrecioProducto_Nuevo,PrecioProducto_Viejo,Usuario,Fecha,Accion)
VALUES(old.IdProductos,NEW.NombreProducto,old.NombreProducto,NEW.TipoProducto,old.TipoProducto,NEW.PrecioProducto,old.PrecioProducto,USER(),NOW(),'Modificar');

SELECT * FROM productos;
DROP TRIGGER ModificarProductos;
SELECT * FROM BitacoraProductos;






Eliminar>


CREATE TRIGGER EliminarProductos AFTER DELETE
ON productos
FOR EACH ROW
INSERT INTO BitacoraProductos(IdProductos,NombreProducto_Viejo,TipoProducto_Viejo,PrecioProducto_Viejo,Usuario,Fecha,Accion)
VALUES(old.IdProductos,old.NombreProducto,old.TipoProducto,old.PrecioProducto,USER(),NOW(),'Eliminar');

DROP TRIGGER EliminarProductos;

SELECT * FROM productos;

SELECT * FROM BitacoraProductos;




No hay comentarios:

Publicar un comentario