sql server触发器中自动生成的临时表

数据库 SQL Server
sql server触发器中,系统自动会生成两张临时表,分别是deleted 和inserted表,下面就为您详细介绍这两张表,希望对您有所帮助。

在sql server中,建立sql server触发器后,会生成deleted 和inserted表,这两张表可以理解为临时表,下面就为您介绍sql server触发器中自动生成的临时表,供您参考。

sql server触发器中,系统自动会生成两张临时表,分别是deleted 和inserted 它们是逻辑(概念)表。也可理解为是临时表。

为方便理解,可以这么来认为Inserted表和Deleted表的作用:Inserted表就是放新的记录,Delete表就是放旧的记录。并且,它们的表结构与原表是完全相同的。

1。当你插入时,要插入的记录是新的,所以可以在Insert表中找到。

如:table1中本来就有N条记录,但执行 insert into table1 value('1')   那么,在table1的sql server触发器的  Inserted表中,有且仅有同样一条记录。
select * from Inserted ,结果为: 1 而不是table1的N+1条记录。

2。当你更新时,要更新的记录是新的,所以可以在Inserted表中找到,被更新的记录是旧的,所以可以在Deleted表中找到。

如:有条记录 1   要改为 2
select * from Deleted 的结果为1  select * from Inserted 的结果为2

3。当你删除时,要删除的记录是旧的,所以可以在Deleted表中找到。

如:表中有1,2,3,4 四条记录,删除其中三条,则 select * from deleted 的结果为 1,2,3

当对某张表建立sql server触发器后,分3种情况讨论

1.插入操作(Insert)

Inserted表有数据,Deleted表无数据

2.删除操作(Delete)

Inserted表无数据,Deleted表有数据

3.更新操作(Update)

Inserted表有数据(新数据),Deleted表有数据(旧数据)
 

 

 

 

【编辑推荐】

带您了解sql server临时表

SQL SERVER恢复的方法

带您深入了解SQL Server事务

SQL Server定时作业的设置方法

SQL Server连接错误的解决方法

责任编辑:段燃 来源: 互联网
相关推荐

2009-04-07 13:56:03

SQL Server触发器实例

2010-07-19 09:50:58

SQL Server2

2010-07-16 10:19:31

2010-11-12 15:35:55

SQL Server约

2010-10-20 14:34:48

SQL Server触

2010-09-13 17:03:34

sql server触

2011-03-03 09:30:24

downmoonsql登录触发器

2010-04-19 10:43:27

SQL Server

2010-11-10 13:37:01

SQL Server触

2011-03-29 13:22:07

SQL Server临时表表变量

2010-07-06 14:47:03

SQL Server数

2010-10-22 11:10:43

SQL Server触

2010-11-08 11:49:24

SQL Server管

2010-06-30 09:36:25

SQL Server

2010-10-19 14:45:01

SQL SERVER临

2010-07-05 11:09:55

SQL Server触

2010-09-16 15:03:10

SQL Server临

2010-09-16 17:56:31

SQL server临

2011-03-28 10:05:57

sql触发器代码

2010-07-22 16:02:29

点赞
收藏

51CTO技术栈公众号