2
我有一個記錄DDL更改的數據庫觸發器。它有以下格式:如何確定什麼操作觸發了處理多個事件的觸發器
CREATE TRIGGER [Log_DDL_Changes]
ON DATABASE
FOR
CREATE_TABLE, ALTER_TABLE, DROP_TABLE,
CREATE_INDEX, ALTER_INDEX, DROP_INDEX,
CREATE_PROCEDURE, ALTER_PROCEDURE, DROP_PROCEDURE,
CREATE_VIEW, ALTER_VIEW, DROP_VIEW,
CREATE_FUNCTION, ALTER_FUNCTION, DROP_FUNCTION, RENAME
--Fires only for CREATE/ALTER/DROP Table and PROCs
AS
BEGIN
.
.
.
END
我希望在創建或更改表,視圖或索引時添加特殊處理。
如何確定哪個事件觸發了處理多個事件的觸發器?
感謝您的答覆。雖然這可能會奏效,但我認爲這比解析SQL命令更好。我覺得我應該能夠鍵入出現在FOR CLAUSE中的EVENT名稱。如果必須的話,我會盡快把我的觸發器分解成單獨的觸發器,這樣我就可以知道什麼事件讓我執行 – ChadD
@ChadD這就是爲什麼我說「*類似這樣的*」。有很多選擇,但是我已經改變它來更密切地反映您評論的偏好。 – RBarryYoung
啊,我現在看到你的編輯。這正是我所期待的。 TY! – ChadD