程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> sql update 觸發器 可獲得被update的行的信息

sql update 觸發器 可獲得被update的行的信息

編輯:更多數據庫知識

復制代碼 代碼如下:
create trigger TgName
on tb
for update
as
if update(recommend)
begin
update tb set commenddate=(getdate()) from tb inner join inserted on tb.vlistid=Inserted.vlistid
end

recommend表示被更新的字段.
關鍵在於Inserted表
觸發器語句中使用了兩種特殊的表:deleted 表和 inserted 表。
Deleted 表用於存儲 DELETE 和 UPDATE 語句所影響的行的復本。在執行 DELETE 或 UPDATE 語句時,行從觸發器表中刪除,並傳輸到 deleted 表中。Deleted 表和觸發器表通常沒有相同的行。

Inserted 表用於存儲 INSERT 和 UPDATE 語句所影響的行的副本。在一個插入或更新事務處理中,新建行被同時添加到 inserted 表和觸發器表中。Inserted 表中的行是觸發器表中新行的副本。

1.插入操作(Insert)
Inserted表有數據,Deleted表無數據

2.刪除操作(Delete)
Inserted表無數據,Deleted表有數據

3.更新操作(Update)
Inserted表有數據(新數據),Deleted表有數據(舊數據)

生前何必久睡,死後自會長眠!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved