码迷,mamicode.com
首页 > 数据库 > 详细

T-SQL触发器

时间:2016-06-08 14:09:30      阅读:323      评论:0      收藏:0      [点我收藏+]

标签:

 触发器

  对表进行增删改操作时,自动执行的一个操作。当操作一个表的同时,需要进行其它关联操作的时候,就可以用到触发器。
比如:下订单时,创建中的商品数量需要减少
比如:退票时,总的票量要增加
属于DDL
关键字trigger
关键:确定要将触发器建立在哪个表上on
执行时间after:在触发源执行完成后执行触发器中的代码
      instead of:在触发源执行前执行触发器中的代码,同时触发源的操作被放弃。
触发源:insert update delete
临时表:进行insert操作时会创建inserted表,存放插入的数据。

    进行delete操作时会创建deleted表,存放删除的数据。

    进行update操作时会同时创建前两个表,存放被修改的数据于deleted表,存放修改后的数据于inserted表。

示例

create trigger bak_order    --创建触发器update_order
on tblorders
after insert
as
begin
insert into tblOrders_bak(oname,ocount,oprice)
select oname,ocount,oprice from inserted
end

------------------------------------------------------

alter trigger update_order      --修改触发器update_order
on tblorders
instead of update
as
begin
update tblOrders_bak set ocount=(select ocount from inserted)
where oname in (select oname from inserted)
end

-----------------------------------------

drop trigger update_order  --删除触发器update_order

 

T-SQL触发器

标签:

原文地址:http://www.cnblogs.com/zk-ljc/p/5569763.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!