您的位置:首页 > 编程语言 > PHP开发

OUTPUT 作用在INSERT,UPDATE,DELETE后

2010-02-24 10:47 323 查看
返回受 INSERT、UPDATE、DELETE 或 MERGE 语句影响的各行中的信息,或返回基于受这些语句影响的各行的表达式。这些结果可以返回到处理应用程序,以供在确认消息、存档以及其他类似的应用程序要求中使用。也可以将这些结果插入表或表变量。另外,您可以捕获嵌入的 INSERT、UPDATE、DELETE 或 MERGE 语句中 OUTPUT 子句的结果,然后将这些结果插入目标表或视图。

SQL Server 2005 新增了一個 OUTPUT 子句的功能,你可以在 UPDATE 或 DELETE 子句中得到執行指令過後的資料,例如你想得知 UPDATE 某筆資料列時,該筆資料列更新前後的欄位值,此時,便可利用 OUTPUT 子句來解決了。

UPDATE 子句的應用,在此之前必須先了解當你執行 UPDATE 指令時,會同時記錄在資料庫裡的兩個虛擬資料表,分別是 deleted 舊的記錄表、Inserted 新的紀錄表。

因此資料庫的處理中實際上會包含紀錄原資料表內欲更新的資料列到 deteted 虛擬資料表,然後 delete 原資料表的資料列,然後再由 Inserted 虛擬資料表中 insert 新的資料列到原資料表中。

如果要在 DELETE 指令使用 OUTPUT 的話,僅能使用 deleted 虛擬資料表,方法可參考上述的 UPDATE 指令即可。


[/code]

帮助文件的URL:ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.zh-CHS/s10de_6tsql/html/41b9962c-0c71-4227-80a0-08fdc19f5fe4.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: