MySQL触发器(trigger):监视某种情况并触发某种操作
mysql触发器(trigger):监视某种情况并触发某种操作
一:四要素
触发时间:before/after
地点:table
监视操作:insert/update/delete
触发操作:insert/update/delete
二:创建触发器
delimiter $ #将sql结束符改为$ 方便写触发的sql语句
create trigger triggerName after/before insert/update/delete on tableName
for each row
begin
sql语句; #想要触发的语句
end$
测试表:商品表(g),订单表(o)
三:删除监视器
drop trigger triggerName
四:下定单(o),商品表(g)数据触发更新
create trigger tg after insert on o
for each row
begin
update g set num=num-new.much where id=new.gid;
开发语言:java,支持数据库:Mysql 5,系统架构:J2EE,操作系统:linux/Windows1. 引言 32. 系统的结构 32.1 系统概述 33. 功能模块设计说明 43.1 商品管理 43.1.1 添加商品功能模块 53.1.2 商品列表功能模块 83.1.3 商品关联功能模块 93.
0
end$
PS:对于监视操作insert 而言,,新增的行用new 表示
行中的每一列的值,用new.列名 取出
五:删除一个订单,商品表相应增加
create trigger tg after delete on o
for each row
begin
update g set num=num+old.much where id=old.gid;
end$
六:修改一个订单,商品表相应改变
create trigger tg after update on o
for each row
begin
update g set num=num+old.much-new.much where id=old.gid;
end$
七:after与before区别
after 是先完成数据的增删改,再触发,前面的数据操作完成
before是先触发,判断触发的条件是否满足,再对数据进行增删改操作
本文永久更新链接地址:
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号