MySQL学习之触发器

 学习峰哥java教程自学笔记: 

http://www.java1234.com/javaxuexiluxiantu.html

/*
触发器:
触发器(TRIGGER)是由事件来触发某个操作。这些事件包括 INSERT 语句、UPDATE 语句和 DELETE 语句。 当数据库系统执行这些事件时,就会激活触发器执行相应的操作。


创建触发器:
一个执行语句
CREATETRIGGER 触发器名 BEFORE |AFTER 触发事件 ON 表名 FOR EACH ROW 执行语句
多个执行语句
CREATETRIGGER 触发器名 BEFORE |AFTER 触发事件 ON 表名 FOR EACH ROW BEGIN 执行语句列表 END




临时变量 
old  删除使用,代表临时操作的一条数据
new  插入使用,代表临时操作的一条数据


查看触发器:
1、SHOWTRIGGERS 语句查看触发器信息 
2、在系统的triggers 表中查看触发器信息




删除触发器:
DROPTRIGGER 触发器名


*/


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,'java1',1000.0,'号',2);


SELECT * FROM t_book WHERE bookName LIKE 'java1';


SELECT * FROM t_booktype;



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 bookName LIKE 'java1';



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值