触发器是一种特殊类型的存储过程,它的功能是在指定的表中的数据发生变化时自动生效。
触发器与普通存储过程的不同之处在于——触发器的执行时由事件触发,而普通存储过程是由命令调用执行(EXEC)
SQL Server主要提供了一下两种触发器
1)DML触发器
2)DLL触发器
当数据库中发生数据操作语言DML事件的时候即执行DML触发器。DLL触发器是SQL Server 2005以后新增的触发器类型,它在响应数据定义语言DDL时触发。
主要讲解DML触发器,又分为三种:
1)AFTER触发器,故名思义,为修改数据时触发的
2)INSTEAD of触发器 执行INSTEAD OF触发器代替通常的触发动作。
3)CLR触发器,他就是万金油,到处都算他的,AFTER 、INSTEAD OF,甚至有一些DLL触发器也算在他里面了,设计者当初为啥这样设计就不得而知了。
下图是INSTEAD OF触发器和AFTER触发器的功能比较
时间: 2024-11-10 11:32:58