轻松掌握设计 Sql Server触发器的原理
2007-07-31 09:47:15 来源:WEB开发网核心提示: 问?这应用了触发器的什么特征?CHECK约束能解决吗?举例2:正在进行整理的货物不能下订单,问?这应用了触发器的什么特征?CHECK约束能解决吗?4、对触发器3种操作的分析:在SQL SERVER为每个触发器都创建了两个专用表:inserted表和deleted表,轻松掌握设计 Sql S
问?这应用了触发器的什么特征?CHECK约束能解决吗?
举例2:正在进行整理的货物不能下订单。
问?这应用了触发器的什么特征?CHECK约束能解决吗?
4、对触发器3种操作的分析:
在SQL SERVER为每个触发器都创建了两个专用表:inserted表和deleted表。
这是两个逻辑表,由系统来维护,在触发执行时存在,在触发结束时消失。
这样有什么用途?
带着问题看,具体操作步骤和过程:
(1)deleted表存放由于执行delete或update语句而要从表中删除的所有行。
在执行delete或update操作时,被删除的行从激活触发器的表中被移动(move)到deleted
表,这两个表不会有共同的行。
(2)inserted表存放由于执行insert或update语句而要向表中插入的所有行。
在执行insert或update事物时,新的行同时添加到激活触发器的表中和inserted表中,
inserted表的内容是激活触发器的表中新行的拷贝。
说明:update事务可以看作是先执行一个delete操作,再执行一个insert操作,旧的行首先
被移动到deleted表,让后新行同时添加到激活触发器的表中和inserted表中。
11.1.3 instead of 和 after 触发器
主要包括定义和应用范围条件,操作执行时机;
11.2 创建触发器
1、考虑为什么要设计出发器,为解决什么问题而设计?
2、应制定的内容:为什么,大家思考一下?不知道,看下面的例子,全看完!
T-SQL语句创建触发器
语法结构:
create trigger 触发器名
on 表或视图
for|after|instead of --操作时机
insert,update,delete
as
sql语句
作业:
更多精彩
赞助商链接