触发器(trigger)其实就是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,当对一个表进行操作( insert,delete, update)时就会激活它执行,触发器经常用于加强数据的完整性约束和业务规则等
1.MYSQL中触发器中不能对本表进行 insert ,update ,delete 操作,以免递归循环触发。
2.触发器按每个表每个事件每次地定义,每个表每个事件每次只允许一个触发器。因此,每个表最多支持6个触发器(AFTER/BEFORE UPDATE/DELETE/INSERT)。单一触发器不能与多个事件或多个表关联。
/* 创建一个删除的触发器 */ DELIMITER $$ CREATE /*!50017 DEFINER = 'root'@'localhost' */ TRIGGER `user_delete` AFTER DELETE ON `user` FOR EACH ROW BEGIN /* code */ #不能有返回值,不能对本表进行修改 END; $$ DELIMITER;