多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > Sqlserver > SQL Server 2005 返回修改后的數據

SQL Server 2005 返回修改后的數據

來源:程序員人生   發布時間:2014-04-10 18:07:56 閱讀次數:4074次
  今天在公司看到同事寫了個SQL2005的新特性的文章,覺得很實用,在這里和大家分享下。原著作權不屬于我。

  這種技術主要是用到了inserted和deleted虛擬表,這兩張表相信大家都很熟悉。以前我們主要是在觸發器中使用。

  我們先來復習下這兩個表:

  Inserted和Deleted這兩個表是邏輯表,并且這兩個表是由系統管理的,存儲在內存中,不是存儲在數據庫中,因此,不允許用戶直接對其修改。
這兩個表的結構與被該觸發器作用的表在相同的表結構。這兩個表是動態駐留在內存中的,當觸發器工作完成,它們也被刪除。

  接下來,看看我們的事例,其實使用起來很簡單,但也很實用。他除了用上面的兩張表外,還使用了output參數。

  創建表:

IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[TestTB]') AND type in (N'U'))
DROP TABLE TestTB
CREATE TABLE TestTB(
[id] [int] IDENTITY(1,1) PRIMARY KEY NOT NULL,
Province [varchar](50) NULL,
City [varchar](50) NULL
)

1、插入數據,并返回插入的數據:

INSERT INTO TestTB(Province,City)
output inserted.Province, inserted.City
VALUES('廣東','深圳')

返回的結果:

2、同理,刪除數據也是一樣的,只不過是使用deleted表罷了。

delete from TestTB
output deleted.*
where id=1

返回結果:

3、兩個結合一起:返回更新前和更新后的數據:

UPDATE TestTB SET Province = '湖南',City='郴州'
OUTPUT '我來自(更新前)'+ DELETED.Province+DELETED.City as [Before] ,'我來自(更新后)' + Inserted.Province+Inserted.City as [After]
WHERE id=1

返回結果:

4、還可以將返回的結果保存在表變量中,這在刪除數據,并把刪除的數據插入到歷史表時很實用

DECLARE @tempTable TABLE(
id int,
Province varchar(50),
City varchar(50)
)
DELETE FROM TestTB OUTPUT deleted.* INTO @tempTable
WHERE id > 4

SELECT * FROM @tempTable

希望大家靈活應該!

作者博客:http://www.cnblogs.com/liuxinhuahao/

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚州五月天 | 伊人久久大香线蕉观看 | 日本一区二区三区四区在线观看 | 99久久精品国产麻豆 | 亚洲天堂最新地址 | 国产一区二区三区亚洲欧美 | 日韩字幕无线乱码 | 夜夜精品视频一区二区 | 欧美成人一区亚洲一区 | 国产精品久久久久久久毛片 | 熟妇毛片 | 天堂在线最新版在线www | 天堂网址 | 污污成人一区二区三区四区 | 国产成人99久久亚洲综合精品 | 久久国产精品久久国产片 | 国产在线观看一区二区三区 | 亚洲国产一区二区三区最新 | 亚洲精品午夜久久久伊人 | 精品在线免费观看 | 久久久午夜精品 | 亚洲品质自拍视频 | 亚洲精品久久久久久久网站 | 国产精品久久久久久亚洲小说 | 欧美校园春色 | 欧乱色国产精品兔费视频 | 亚洲欧美日韩中文字幕在线一区 | 免费在线公开视频 | 欧美刺激性色黄大片18 | 日本精品免费 | 手机看片国产免费 | 中文字幕在线2021 | 亚洲十欧美十日韩十国产 | 最近中文在线中文 | 国产高清自拍 | 国产xxxxxx久色视频在 | 精品久久久久久综合网 | 最新在线观看精品国产福利片 | 欧美一区二区久久精品 | xxx69欧美hdxxxhd| 国产精品免费播放 |