2024年4月17日发(作者:)
Sql server中output用法解析
一、关于output子句
SQL Server 2005中的output子句,可以使你从修改语句(INSERT、UPDATE、
DELETE)中将数据返回到表变量中。带结果的 DML 的有用方案包括清除和存档、消息
处理应用程序以及其他方案。这一新的 OUTPUT 子句的语法为:
OUTPUTINTO @table_variable
可以通过引用插入的表和删除的表来访问被修改的行的旧/新映像,其方式与访问触发
器类似。在 INSERT 语句中,只能访问插入的表。在 DELETE 语句中,只能访问删除的
表。在 UPDATE 语句中,可以访问插入的表和删除的表。
二、实例说明
1、将 OUTPUT INTO 用于简单 INSERT 语句
以下示例将行插入 ScrapReason 表,并使用 OUTPUT 子句将语句的结果返回到
@MyTableVar table 变量。由于 ScrapReasonID 列使用 IDENTITY 属性定义,因此未
在 INSERT 语句中为该列指定一个值。但请注意,将在列 easonID 内
的 OUTPUT 子句中返回由数据库引擎 为该列生成的值。
代码use AdventureWorks
go
--定义一个表格变量
declare @mytablevar table( ScrapReasonIDsmallint,
Name1varchar(50),
ModifiedDatedatetime)
insert into eason
output
@mytablevar
easonID,inserted.[Name],edDateinto
values ('operator error',getdate());
--显示@mytablevar中的数据
select * from @mytablevar
--显示eason表中的数据
select * from eason
go


发布评论