触发器简单实例讲解
来源:互联网 发布:算法设计与分析课件 编辑:程序博客网 时间:2024/06/06 04:09
触发器简单实例讲解
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:
- 监视地点(table)
- 监视事件(insert/update/delete)
- 触发时间(after/before)
- 触发事件(insert/update/delete)
语法:
【示例】:
create trigger triggerNameafter/before insert/update/delete on 表名for each row #这句话在mysql是固定的beginsql语句;end;
现以商品下单进行讲解:
- insert。
对于insert而言,新插入的行用new来表示,行中的每一列的值用new.列名来表示。 - delete。
对于delete而言:原本有一行,后来被删除,想引用被删除的这一行,用old来表示,old.列名可以引用被删除的行的值。 - 创建表。
CREATE TABLE goods(id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(20), num INT);CREATE TABLE orders(id INT PRIMARY KEY AUTO_INCREMENT, goods_id INT, much INT);insert into goods(name,num) values('商品1',20),('商品2',30),('商品3',40);
下单操作
DELIMITER $$ CREATE TRIGGER `test`.`trigger_insert` AFTER INSERT ON orders FOR EACH ROW BEGIN UPDATE goods SET num=num-new.much WHERE id=new.goods_id; END$$DELIMITER ;
取消订单操作
DELIMITER $$ CREATE TRIGGER `test`.`trigger_delete` AFTER delete ON orders FOR EACH ROW BEGIN update g set num = num + old.much where id = old.goods_id; END$$DELIMITER ;
阅读全文
0 0
- 触发器简单实例讲解
- 数据库触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- 数据库触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- SQL触发器实例讲解
- fig14-09
- 高清时代4K H.265/HEVC来临---OTT/IPTV直播系统大发展
- 域名劫持原理及实现
- cocos ide 新建项目无响应及read nil 报错解决
- 运行程序,提示内存错误
- 触发器简单实例讲解
- CartoDB source example——CartoDB数据源案例
- MFC中CFileDialog的用法
- Windbg的gflags.exe调试堆栈溢出,访问越界等问题。
- CSDN日报20170628——《实习,背后的选择?》
- BZOJ 2229: [Zjoi2011]最小割 最小割树 / 分治最小割
- 隐藏手机号中间四位
- 详解SPI中的极性CPOL和相位CPHA
- 苹果发力AR,未来或赶超谷歌?