《MYSQL触发器》要点:
本文介绍了MYSQL触发器,希望对您有用。如果有疑问,可以联系我们。
触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象,即表的操作事件触颁发上的触发器的执行.
所有触发器都保留在information_schema.trigger表中.
创立触发器
格式:
create trigger 触发器名字
before/after
insert/update/delete/load data/replace ON 树立触发器的表
FOR EACH ROW
触发器法式体
例子
假设体系中有两个表:
班级表 class(班级号 classID,班内学生数 stu_num)
学生表 student(学号 stuID,所属班级号 classID)
要创立触发器来使班级表中的班内学生数随着学生的添加自动更新
DELIMITER $
create trigger tri_stu_Insert after insert
on student for each row
begin
declare c int;
set num = (select stu_num from class where classID=new.classID);
update class set stu_num = num + 1 where classID = new.classID;
end$
DELIMITER ;
new与old关键字解析
在 INSERT 型触发器中,NEW 用来表现将要(BEFORE)或已经(AFTER)插入的新数据;
在 UPDATE 型触发器中,OLD 用来表现将要或已经被修改的原数据,NEW 用来表现将要或已经修改为的新数据;
在 DELETE 型触发器中,OLD 用来表现将要或已经被删除的原数据;
show trigger [from DBname] 查看触发器
drop trigger [if exists][DBname.] trigger_name删除了触发器
欢迎参与《MYSQL触发器》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。