1、mysql触发器是:在当前的数据库表中设置一个对每行数据的一个监听器,监听相关事件,每当事件发生时。会执行一段由sql完成的一段功能代码。这段功能代码也是sql语句。

2、触发器的元素:

事件,执行代码。

create trigger 触发器名字 事件 执行代码;

执行代码就是sql语句或sql语句块。

插入:insert 删除:delete  修改:update

事件的时机:执行之前,执行之后。内容和时机组合共有六种事件。

Before insert  ,Before delete ,before update ,after insert ,after delete ,after update.

注意:这个时机,是针对其后表的内容的监控。

create trigger jiaobanfei after update on t_student

for each row

update t_class set t_class_money=t_class_money+20;

此处的after update on是说t_student表的每一行更新后,就立即更新t_class表中的t_class_money字段。

删除触发器:

drop trigger 触发器名字;

1、触发器不能同名

2、目前mysql只支持一类事件设置一个触发器。

show create trigger trigger_name;

2、在触发器中获取触发该触发程序时的数据。

利用触发程序内的new 和old来完成。

注意:insert中不能使用old,delete中不能使用new。

sql语句块用begin   end包裹。

整个触发器语句用delimiter包裹。