sql server 触发器

alter  trigger ttt_del
  on ttt
 for delete
 as
begin
print ' 表 ttt删除了数据 '
end;


GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

 

触发器是一种特殊类型的存储过程。当使用 DML 语句时, SQL Server 将自动执行这一特殊类型的存储过程。触发器和其他存储过程一样,可以包含简单的或者复杂的 SQL 语句。

触发器的特殊性体现在:

¨          当对指定数据进行修改时,触发器自动执行,不需要按照名称手工执行。

¨          使得触发器执行的操作称为触发事件。

¨          触发器的 SQL 语句称为触发动作。

由于触发器自动执行的特性,有些时候会出现触发器的瀑布触发:在表 T1 上定义了触发器 S1 (这里有对表 T2 的 DML 操作), … ,在表 Tn 上定义了触发器 Sn 。对表 T1 的一个操作,会引起 T1 至 Tn 共 n 张表的操作。

SQL Server 把触发器分为 5 种类型:

¨          UPDATE :当修改表中数据时,这类触发器被激活。

¨          INSERT :当往表中插入数据时,这类触发器被激活。

¨          DELETE :当删除表中数据时,这类触发器被激活。

¨          INSTEAD OF :该类型的触发器代替触发器被激活,它总是在执行插入、修改和删除操作之前被执行。

¨          AFTER :该类型的触发器则是在触发动作完成之后被激活。

 触发器管理

 使用 SQL 语句管理触发器

使用 CREATE TRIGGER 语句能够建立触发器,其语法格式如下:

CREATE TRIGGER < 触发器名 >

 ON { < 表名 > | < 视图名 >}

 { FOR | INSTEAD OF | AFTER}

{ [UPDATE] [,] [INSERT] [,] [DELETE]}

AS <SQL 语句块 >

其中:

¨          < 触发器名 > 是要新建的触发器名称。

¨          < 表名 > 或 < 视图名 > 是触发器所建立的数据库对象名称。

¨          <SQL 语句块 > 是定义触发动作的语句。

这是建立触发器语句的简洁版,详细语法要参考在线手册。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值