关于触发器的执行

xjlin03 2008-01-17 11:43:12
请问ALTER TRIGGER是在事件完成后触发吗?

也就是说,如果我做一个操作,可能会有延时的情况下。(假设:insert into 一条记录)我在表中定议一个ALTER TRIGGER触发器,是不是保证在insert into事件执行完成后才触发的呢?

如果不是的话,那如果需要在一个事件完全完成后触发的触发器应该怎么写。谢谢!
...全文
105 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
-狙击手- 2008-01-18
  • 打赏
  • 举报
回复
after 吧?

alter trigger 是修改触发器



AFTER

指定触发器只有在触发 SQL 语句中指定的所有操作都已成功执行后才激发。所有的引用级联操作和约束检查也必须成功完成后,才能执行此触发器。
昵称被占用了 2008-01-18
  • 打赏
  • 举报
回复
楼上两位解释了after触发器的执行,必须提到的是,虽然after触发器的执行是在insert into语句执行成功后执行,但是触发器和insert into语句包含在同一个事务中,如果触发器执行过程产生错误,将会回滚事务,这样insert into语句的执行将以其被回滚。
JL99000 2008-01-18
  • 打赏
  • 举报
回复
触发器有多种:
想for insert(after insert),instead of insert
其实他们的作用完全可以通过字面上的意思来理解到
for(after):就是当insert操作正确执行后要进入到触发器内部来执行操作
instead of :就是用触发器内部的操作来代替insert的操作

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧