触发器

作者: olivia_ong | 来源:发表于2016-11-16 19:35 被阅读0次

基本概念

触发器(trigger)是MySQL语句响应以下任意语句而自动执行的一条MySQL语句(或位于begin和and之间的一组语句):

  • delete
  • insert
  • update

其他语句不止触发器。
只有表支持触发器,视图和临时表都不支持。

创建触发器

在创建触发器时,需要:

  • 定义触发器名;
  • 定义触发器关联的表;
  • 定义触发器响应的活动;
  • 定义触发器何时执行(处理之前或之后);

create trigger trigger_name before/after insert/delete/update on table_name for...'

触发器名必须保持在每个表中唯一,但不要求在一个数据库中唯一。
触发器按每个表每个时间每次地定义,每个表每个事件每次只允许定义一个触发器。因此,每个表最多支持6个触发器(insert,delete和update的之前和之后)。
如果before触发器失败,那么MySQL不会执行请求的操作。如果before触发器或者语句本身失败,则不执行after触发器。

删除触发器

drop trigger trigger_name;

使用触发器

create trigger neworder after insert on orders
for each row select NEW.order_num into @aaa;

insert into orders(order_date,cust_id) values(Now(),10001);
select @aaa;

相关文章

网友评论

      本文标题:触发器

      本文链接:https://www.haomeiwen.com/subject/inprpttx.html