【问题标题】:Trigger to capture schema changes in the Server触发以捕获服务器中的架构更改
【发布时间】:2010-10-18 02:23:55
【问题描述】:

是否可以实现类似下面的触发器

CREATE TRIGGER [tr_AU_ddl_All_Server] ON DATABASE
    WITH EXECUTE AS self
    FOR DDL_DATABASE_LEVEL_EVENTS
AS
    DECLARE
        @data XML
      , @rc INT
    SET @data = EVENTDATA()
    EXEC @rc = __AU.dbo.AU_DDLLog @data
GO

但在整个服务器上。我的想法是捕获服务器中所有数据库的所有架构更改。

就我而言,这在 SQL Server 2005 中是不可能的,但我想知道是否有人可以使用这样的东西。我想避免在每个数据库中都实现触发器。

【问题讨论】:

    标签: sql sql-server sql-server-2005 tsql triggers


    【解决方案1】:

    是的,SQL Server 2005 引入了“DDL 触发器”——在SQL Team 阅读一篇关于它的优秀文章。

    这篇文章很好地展示了它们是 DDL 触发器的两个范围 - 服务器范围或数据库范围。那些数据库范围的不能应用于整个服务器 - 你必须在每个数据库中设置它们。

    马克

    【讨论】:

    • 谢谢。我是这么想的,但我希望有一个解决办法。
    猜你喜欢
    • 2021-12-28
    • 2020-11-27
    • 2014-12-05
    • 1970-01-01
    • 2015-07-30
    • 2011-12-30
    • 1970-01-01
    • 2017-09-14
    • 1970-01-01
    相关资源
    最近更新 更多