首页 > 代码库 > 数据库(十)

数据库(十)

触发器 

触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性,另外还有强化约束和级联运行的功能。
--触发器本质上还是一个存储过程,
--只不过不是通过exec来调用执行,
--而是通过增删改数据库的操作来引发执行
select *From Student
select *from Score
alter trigger TR_Student_Delete
on student
for delete
--当删除时先引发触发器,用触发器里的操作替换本来的操作
as
--delete from score where sno=108
insert into student values(‘108‘,‘曾鹏‘,‘男‘,‘1977-09-01‘,‘95033‘)
--delete from student where sno=108
go
delete from Student where Sno=108

 


alter table teacher disable trigger all--禁用数据表的所有触发器
alter table teacher enable trigger all--开启数据表的所有触发器

inserted 临时表  存放任何更改后的新信息

deleted 临时表 存放最后一条的删除信息

after (for)  触发器(之后触发)

instead of  触发器(之前触发)主要优点是使不可被修改的视图能够支持修改。

数据库(十)