MYSQL触发器
发布时间:2022-11-25 13:02:22 所属栏目:教程 来源:
导读: 触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象,即表的操作事件触发表上的触发器的执行。
所有触发器都保存在information_schema.trigger表中。
创建触
所有触发器都保存在information_schema.trigger表中。
创建触
|
触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象,即表的操作事件触发表上的触发器的执行。 所有触发器都保存在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 型触发器中mysql触发器,OLD 用来表示将要或已经被修改的原数据,NEW 用来表示将要或已经修改为的新数据; 在 DELETE 型触发器中,OLD 用来表示将要或已经被删除的原数据; show trigger [from DBname] 查看触发器 drop trigger [if exists][DBname.] trigger_name删除触发器 (编辑:草根网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐

浙公网安备 33038102330554号