2011-09-03 14 views
2

我創建了兩個觸發器已經:從inserated如何爲刪除的項目寫入觸發器?

create trigger [insert_history] on users 
for insert 
as 
insert audit(action_type, table_name, object_name, time) 
select 'Inserted', 'users', username, getdate() 
from inserted 

go 

create trigger [update_history] on users 
for update 
as 
insert audit(action_type, table_name, object_name, time) 
select 'Updated', 'users', username, getdate() 
from deleted 

插入的檢索值。 更新從刪除中檢索值。

刪除語句怎麼樣?

回答

2

也會使用deleted僞指針。

它可以與您的update觸發器一起使用,使用for update, delete作爲更新觸發器,只包含「before」值,因此兩者的代碼當前都是相同的。

編輯:雖然那麼你的觸發器將需要檢查是否EXISTS(SELECT * FROM inserted)來確定操作字符串,所以也許單獨會更容易。

+0

謝謝。有用。 – Amumu