您的位置:首页 > 数据库

SQL Server 触发器

2016-06-17 00:37 337 查看

SQL Server 触发器

触发器是一种特殊类型的存储过程,触发器主要是通过事件进行触发而被执行的,而存储过程可以通过名字直接调用。

对某一个表进行UPDATE , INSERT, DELETE 时,SQL Server会自动执行自定义的触发器。

触发器存在的作用

实现由主键和外键所不能保证的参照完整性和数据一致性

强化约束,能实现比CHECK语句更为复杂的约束

跟踪变化,触发器可以侦测数据库内的操作,从而不允许数据库不经许可的更新和变化

级联运行,触发器可以侦测数据库内的操作,并自动级联影响整个数据库的内容

存储过程的调用

创建触发器

-- 创建触发器
-- 创建一个DELETE类型的触发器
create trigger tr_employee ON employee
for  delete
as
declare @msg varchar(50)
select @msg = STR(@@ROWCOUNT)+'个员工被删除'
select @msg
return ;


调用触发器

相应的SQL语句执行时,会自动调用触发器

delete from employee
where employee_name='东方牧'

-- 结果
-- 1个员工被删除


删除触发器

drop trigger tr_employee


修改触发器

alter trigger tr_employee on employee
for insert  -- 创建一个INSERT类型的触发器
as
declare @msg varchar(50)
select @msg = STR(@@ROWCOUNT)+'个员工被插入'
select @msg
return
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: