标签:size 新建 -- join article 影响 实用 class comment
简介:开发也有年头了,但是触发器确实用的比较少,但是无容置疑触发器确实不错,
最近项目要求需要用到的触发器特别多、频繁,觉得很有必要记录和积累下。
在触发器语句中用两个特殊的表一个是deleted表和inserted。
它们是通过触发器操作自动创建驻留在内存中的临时表。
--------------------------------------------------------------------------------------------------------------------------------------------
描述:
Deleted表用于存储 DELETE和 UPDATE语句所影响的行的复本。在执行DELETE或 UPDATE语句时,行从触发器表中删除,并传输到 deleted表中。Deleted表和触发器表通常没有相同的行。
Inserted 表用于存储 INSERT 和 UPDATE 语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到 inserted 表和触发器表中。Inserted 表中的行是触发器表中新行的副本。
综上可以总结一下:
触发器的操作
deleted表和inserted表的数据变化
插入操作(Insert)
Inserted表有数据,Deleted表无数据
删除操作(Delete)
Inserted表无数据,Deleted表有数据
更新操作(Update)
Inserted表有数据(新数据),Deleted表有数据(旧数据)
--------------------------------------------------------------------------------------------------------------------------------------------
实践:
下面将以触发器中的修改业务为例讲述Inserted和Deleted的结合操作;
在合同中根据编号部门改变而修改合同号;
在合同管理系统中生成的合同编号,
如对应部门修改,合同编号中对应部门代码对应修改,流水号不变;
修改前:15-TV-56-0996
修改后:15-TV-GB-0996
标签:size 新建 -- join article 影响 实用 class comment
原文地址:http://www.cnblogs.com/zwzw1/p/7115082.html