MySQL——触发器
MySQL语句在需要执行时被执行,存储过程也是如此。但是,如果想要某些SQL在事件发生时自动执行,这就需要触发器。 基本语法 //创建触发器 CREATE TRIGGER name //删除触发器 DROP TRIGGER name 创建触发器 在创建触发器时需要给出4条信息 唯一的触发器名 触发器需要关联的表 触发器应该响应的活动(DELETE、INSTERT或UPDATE) 触发器何时执行(处理之前还是之后) 删除触发器 为了删除一个触发器,可以使用DROP TRIGGER 语句。如下所示 使用触发器 INSERT触发器 INSERT触发器在INSERT语句执行之前或之后执行。需要知道以下几点: 在INSERT触发器代码内,可以用一个名为NEW的虚拟表,访问被插入的行 在BEFORE INSERT触发器中,NEW中的值也可以被更新(允许更改被插入的值) 对于AUTO_INCREMENT列,NEW在INSERT执行前包含0,在INSERT执行之后包含新的自动生成值 DELETE触发器 DELETE触发器在DELETE语句执行之前或之后执行。需要知道以下两点 在DELETE触发器代码中,可以引用一个名为OLD的虚拟表,访问被删除的行 OLD中的值全都是只读的,不能更新 UPDATE触发器 UPDATE触发器在UPDATE语句执行之前或之后执行。需要知道以下几点