SQL Server 支持两种类型的触发器AFTER 触发器和INSTEAD OF 触发器
1)INSTEAD OF 触发器表示并不执行其所定义的操作INSERT,UPDATE ,DELETE,而仅是执行触发器本身,既可在表上定义INSTEAD OF 触发器,也可以在视图上定义INSTEAD OF 触发器。
2)AFTER触发器(也叫“FOR”触发器)则会在触发 insert、update 或是delect 动作之后执行。
一个表或视图的每一个修改动作(insert,update和delete)都可以有一个instead of 触发器,一个表的每个修改动作都可以有多个After触发器。
after触发器是在操作成功后,所采取的一些动作
而对于instead of触发器,真正起作用的是触发器里面的动作!
讲解一个简单的insert触发器,
先创建测试表
create table testTable
(
id int identity (1,1),
money int,
)
给测试表创建一个新增的触发器
create trigger firsttrigger 创建触发器
on testTable 表名
FOR insert 什么条件下触发
as
begin
declare @testcount int; 定义一个变量
select @testcount=COUNT(*) from testTable; 变量值等于旧表的统计值
if not exists (select * from sysobjects where name='testTableT