Sql触发器

Sql触发器

触发器的概述

触发器是一个特殊的存储过程,触发器是对表进行新增、更新、删除的时候会自动执行的特殊存储过程。

有两种触发器

触发器分为

1after触发器(之后触发)  
    a、 insert触发器  
    b、 update触发器  
    c、 delete触发器  
2、 instead of 触发器 (之前触发)  

after触发器

after触发器只有在执行,insert、update、delete之后触发器才会触发。

instead of触发器

instead of触发器只执行本身(触发器)。

触发器的优点

1,有助于完整性

2,可以实现数据库的层叠更改

after触发器的使用

after触发器的使用

select * from Books
select * from BookType
insert Books values('5G','猛',1)
delete Books where  id=4
update Books set TypeID=2 where ID=1
--创建一个触发器,当我在Books表加一条数据时,触发一个事件
---这个事件将会在booktype表中,给对应新增书分类,库存+1
--新增
go
create trigger tri_Add
on books for insert
as
declare @typeID int
select @typeID=TypeID from inserted
update BookType set Nums=Nums+1 where id=@typeID
--删除
go
create trigger tri_D
on books for delete
as
declare @typeID int
select @typeID=TypeID from deleted
update BookType set Nums=Nums-1 where id=@typeID
--修改
go
create trigger tri_kjkj
on books for update
as
declare @typeID int
declare @typeIDNew int
select @typeID=TypeID from deleted 
select @typeIDNew=TypeID from inserted 
update BookType set Nums=Nums-1 where id=@typeID
update BookType set Nums=Nums+1 where id=@typeIDNew
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试
应支付0元
点击重新获取
扫码支付

支付成功即可阅读