ddl-trigger

    1熱度

    1回答

    我想在人員更新視圖查詢時觸發一個函數。我的意思是,當一個SQL用戶編輯視圖並保存它時,我希望觸發器觸發。不是當SQL用戶對視圖運行UPDATE查詢時觸發。 這可能嗎?如果是這樣,有人可以給我一個例子/指向正確的方向嗎? 感謝, 亞當

    1熱度

    2回答

    有沒有辦法查看誰更新了哪個數據庫對象以及何時更新?我希望能夠查看哪個開發人員歷史上對某個表或存儲過程(或任何其他對象)進行了更改。 我知道我們可以實現DDL觸發器並從這一點開始捕獲這些信息,但是有沒有辦法查看歷史數據。數據庫位於SQL Server 2008 R2標準版上。

    4熱度

    1回答

    回覆:SQL Server 2008中EE或SQL Server SQL Server的審覈組件2012 EE 1)任何人都已經能夠生產測試工具(即T- SQL)映射什麼DDL語句觸發什麼審計事件?例如。 DROP TABLE [table-name]觸發DATABASE_CHANGE_GROUP事件。 是的,這個測試裝置會相當大,但非常值得放在一起作爲參考。我目前沒有時間去做這件事,而且我也看不

    2熱度

    1回答

    我有一個記錄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_

    1熱度

    1回答

    我想創建一個觸發器,它通過電子郵件向我發送在服務器中創建的數據庫的名稱。每當創建數據庫時,我都會收到一封電子郵件。請幫忙。 我曾嘗試下面的代碼只是返回打印語句,但不工作: IF EXISTS (SELECT * FROM sys.server_triggers WHERE name = 'ddl_trig_database') DROP TRIGGER ddl_trig_database O

    0熱度

    1回答

    我在設置ALL SERVER觸發器時遇到問題。 我正在使用Adventureworks2012數據庫來嘗試獲取審計觸發器的工作。 我想理想情況下觸發器寫入數據庫,如果有人在數據庫級別進行更新,插入或刪除操作,我會將其稱爲audit2012。 我做了一個簡單的觸發器,寫入表中,當我更新等。我的問題是,當我嘗試將其更改爲所有服務器。這是SQL。如果我改變了目標,所有的服務器我得到的錯誤: Msg 10

    4熱度

    1回答

    我正在嘗試跟蹤用戶創建。我曾在很多帖子中看過DDL觸發器,但這些觸發器似乎只追蹤對象,而不是用戶。在SQL Server中創建或刪除用戶時,有什麼方法可以跟蹤/記錄嗎?

    1熱度

    1回答

    我在名爲DBO和Switch的數據庫上有兩個架構。我創建了此DDL觸發器,它將DBO上的DDL更改記錄到一個表中。然後檢查DDL影響的對象是否被分區,如果是,我在另一個架構Switch上運行相同的DDL。這種方法工作正常,除非用戶不在DDl語句中指定模式名稱。 我正在尋找一種方法來檢查發出的DDl是否存在架構名稱,如果不存在,那麼在SWitch架構上默認發出DDL。 關於如何實現這一點的任何想法?

    1熱度

    2回答

    我有以下DDL觸發器我的服務器上 CREATE TRIGGER [DDLForLogin] ON ALL SERVER FOR LOGON AS BEGIN DECLARE @data XML SET @data = EVENTDATA() IF EXISTS(SELECT * FROM sys.Databases WHERE NAME = 'DatabaseM

    1熱度

    1回答

    我需要審覈對數據庫所做的DDL更改。這些更改需要在以後的許多其他數據庫中進行復制。我發現here可以啓用DDL觸發器來跟蹤DDL活動,並且這對於create table和drop table操作非常有用,因爲觸發器獲取了已執行的T-SQL,並且我可以愉快地將它存儲在某個地方,並簡單地執行它稍後的其他服務器。 我遇到的問題是alter操作:當從Management Studio更改列名稱時,生成的事