mysql 触发器

2017-08-24  本文已影响0人  _Jing_bo

创建触发器之前....

create database....
....
create table....
....

创建触发器

固定格式

>delimiter //
>create trigger tirggerName
>after | before    insert | update | delete
>on triggerTableName for each row
>begin
>.....;    --一条或多条语句
>end;
>//
>delimiter ;

种类

insert型
after insert 和 before insert两种

插入某一行时激活触发器,可能通过 insert语句触发

update型
after update 和 before update 两种

更改某一行时激活触发器,可能通过 update 语句触发

delete型
after delete 和 before delete 两种

删除某一行时激活触发器,可能通过 delete 语句触发

new 与 old

在 insert 型触发器中,new用来表示将要(before)或已经(after)插入的新数据;
在 update 型触发器中,old 用来表示将要或已经被修改的原数据,new 用来表示将要或已经修改为的新数据;
在 delete 型触发器中,old 用来表示将要或已经被删除的原数据;
使用方法: new.columnName (columnName 为相应数据表某一列名)
另外,old 是只读的,而 new 则可以在触发器中使用 set 赋值,这样不会再次触发触发器,造成循环调用。

删除触发器

drop trigger triggerName
上一篇下一篇

猜你喜欢

热点阅读