0
在SQL Server 2000中,默認情況下,DELETE查詢是否會導致執行表的UPDATE觸發器?刪除一行會導致更新觸發器觸發嗎?
我知道我可以定義一個將在DELETE和UPDATE上執行的觸發器,但我想我會驗證這實際上是首先需要的。在觸發
在SQL Server 2000中,默認情況下,DELETE查詢是否會導致執行表的UPDATE觸發器?刪除一行會導致更新觸發器觸發嗎?
我知道我可以定義一個將在DELETE和UPDATE上執行的觸發器,但我想我會驗證這實際上是首先需要的。在觸發
一個刪除不火UPDATE觸發器。如果你有一個觸發器被定義爲在DELETE和UPDATE上被觸發,那麼它將在DELETE上執行,但這是因爲它也是一個DELETE觸發器。
轉儲這一點,並檢查自己
IF @@ROWCOUNT > 0
BEGIN
IF EXISTS (SELECT 1 FROM inserted)
BEGIN
IF EXISTS (SELECT 1 FROM deleted)
PRINT 'update';
ELSE
PRINT 'insert';
END
ELSE
PRINT 'delete';
END
謝謝,我終於嘗試了這個代碼。幫助我找出答案很有用。話雖如此,我接受了Chochos的回答,因爲他對這個問題有了真正的答案。謝謝! – 2009-02-05 14:56:31