1、触发器概念
(1)触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。SQL3的触发器是一个能由系统自动执行对数据库修改的语句。 –摘自百度百科
(2)触发器与存储过程的唯一区别是触发器不能执行EXECUTE语句调用,触发器为自动触发。
2、创建简单触发器:
create trigger [dbo].[aa]
on [dbo].[aaaa]
for insert ,delete,update
as
truncate table bbbb
insert into bbbb
select code,imagepath,maxscore from aaaa
–其中 for 可换为 after 、before,根据实际场景
4、删除触发器
drop trigger triggerName
5、查找当前所有触发器
select * from Sysobjects where xtype = ‘TR’
–Sysobjects 中保存了创建的对象的信息,如表和触发器的,若查找当前所有创建的表 xtype 值为 U
6、打开&&关闭触发器
disable trigger tableName on triggerName –关闭
enable trigger tableName on triggerName –打开