MySQL触发器

MySQL触发器

概念:由事件触发某些操作。事件有三种:INSERTDELETEUPDATE

当数据库执行这些事件时,会激活触发器执行相应的操作。

注:MySQL5.02版本开始支持触发器。

 

1、创建单条执行语句的触发器

CREATE TRIGGER 触发器名 <BEFORE | AFTER>  <INSERT | DELETE | UPDATE>

ON 表名 FOR EACH ROW  <执行语句>;

 

BEFORE 表示在事件发生之前执行触发器相应的操作。

AFTER  表示在事件发生之后执行触发器相应的操作。

<INSERT | DELETE | UPDATE> :事件的触发条件,三选一。

执行语句:出发事件所要执行的语句。

 

2、 创建有多条执行语句的触发器

CREATE TRIGGER 触发器名 <BEFORE | AFTER>  <INSERT | DELETE | UPDATE>

ON 表名 FOR EACH ROW

BEGIN

执行语句1;

执行语句2;

... ...

执行语句n;

END;

 

3、 查看触发器

SHOW TRIGGERS;

 

4、 查看triggers表中的触发器

MySQL所有的触发器都存放在triggers表中

SELECT * FROM information_schema.triggers \G

注:information_schema.triggers表示information_schema数据库下的triggers表。

此语句为跨数据库查询。

5、 触发器执行顺序

a) 执行BEFORE触发器相应的<执行语句>

b) 执行<INSERT | UPDATE | DELETE>

c) 执行AFFTER触发器相应的<执行语句>

 

6、 删除触发器

DROP TRIGGER 触发器名;

posted @ 2017-04-12 11:13  宁静淡泊  阅读(233)  评论(0编辑  收藏  举报