CREATE TABLE WAREHOUSE_AUDIT( TransID INT NOT NULL AUTO_INCREMENT, Action CHAR(5), OldName VARCHAR(40), NewName VARCHAR(40), PRIMARY KEY (TransID));
CREATE TRIGGER beforeWarehouseUpdate BEFORE UPDATE ON WAREHOUSE FOR EACH ROW BEGIN INSERT INTO WAREHOUSE_AUDIT (Action, OldName, NewName) VALUES ('before', OLD.Manager, NEW.manager); END; CREATE TRIGGER afterWarehouseUpdate AFTER UPDATE ON WAREHOUSE FOR EACH ROW BEGIN INSERT INTO WAREHOUSE_AUDIT (Action, OldName, NewName) VALUES ('after', OLD.Manager, NEW.manager); END;
UPDATE WAREHOUSE SET Manager="Roy Rogers" WHERE Manager LIKE "%Rogers"; SELECT * from WAREHOUSE_AUDIT;
CREATE TRIGGER beforeWarehouseInsert BEFORE INSERT ON WAREHOUSE FOR EACH ROW BEGIN IF NEW.WarehouseState = "PA" THEN SET NEW.WarehouseState = "XX"; END IF; END; INSERT INTO WAREHOUSE (WarehouseCity, Manager, SquareFeet, WarehouseState) VALUES ("Edinboro", "Dan Bennett", 100, "PA")//
CREATE TRIGGER afterWarehouseInsert AFTER INSERT ON WAREHOUSE FOR EACH ROW BEGIN IF NEW.WarehouseState = "OH" THEN CALL No_Warehouses_Permitted_in_Ohio; END IF; END;