触发器(TRIGGER)是由事件来触发某个操作。这些事件包括 INSERT 语句、UPDATE语句和 DELETE语句。当数据库系统执行这些事件时,就会激活触发器执行相应的操作。MySQL 从 5.0.2 版本开始支持触发器。
创建触发器
创建只有一个执行语句的触发器
CREATETRIGGER 触发器名 BEFORE |AFTER 触发事件
ON 表名 FOR EACH ROW 执行语句
创建有多个执行语句的触发器
DELIMITER&&
CREATETRIGGER 触发器名 BEFORE |AFTER 触发事件
ON 表名 FOR EACH ROW
BEGIN
执行语句列表
END
&&
DELEMITER;
DELIMITER,一般 SQL语句以“; ”结束,在创建多个执行语句的触发器时,要用到“; ” ,所以用 DELIMETER 来切换一下。
查看触发器
SHOW TRIGGERS;
触发器的使用
MySQL 中,触发器执行的顺序是 BEFORE 触发器、表操作(INSERT、UPDATE 和 DELETE) 、AFTER 触发器,触发器中不能包含START TRANSACTION, COMMIT, ROLLBACK,CALL 等。
删除触发器
DROP TRIGGER 触发器名;