1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| # 注意使用new和old # 因为是AFTER INSERT,是插入,所以用new代替新插入的那条信息 CREATE TRIGGER trig_book AFTER INSERT ON t_book FOR EACH ROW UPDATE t_bookType SET bookNum=bookNum+1 WHERE new.bookTypeId=t_booktype.id; INSERT INTO t_book VALUES(NULL,'java好',100,'ke',1);
# 下面一次性要执行三条操作语句,有三个分号,所以要用DELIMITER # 因为是AFTER DELETE 是删除,所以下面用old代替要删除的那条信息
DELIMITER | CREATE TRIGGER trig_book2 AFTER DELETE ON t_book FOR EACH ROW BEGIN UPDATE t_bookType SET bookNum=bookNum-1 WHERE old.bookTypeId=t_booktype.id; INSERT INTO t_log VALUES(NULL,NOW(),'在book表里删除了一条数据'); DELETE FROM t_test WHERE old.bookTypeId=t_test.id; END | DELIMITER ;
DELETE FROM t_book WHERE id=5;
SHOW TRIGGERS;
DROP TRIGGER trig_book2 ;
|