当前位置: 首页 > 面试题库 >

触发以捕获服务器中的架构更改

伊裕
2023-03-14
问题内容

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

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 Server 2005引入了“ DDL触发器”,请在SQL
Team
上阅读一篇出色的文章。

本文很好地显示了它们是DDL触发器的两个作用域-服务器范围或数据库范围。数据库范围的数据库不能应用于整个服务器-您必须在每个数据库中进行设置。

马克



 类似资料:
  • userNotesTable: 用户提醒表: 插入触发器: 更新触发器: 这是数据库的当前代码,以及提醒表的特定触发器。我遇到的困难是,从提醒表中的specific中的user notes表中选择特定的名称和额外的内容,所有这些都在更新触发器中。 插入时,和会被插入到提醒和搜索表中,但我希望能够使用特定名称和用户注释表中的额外内容更新搜索表,这可能吗?

  • 我有以下要求,我想从cosmosDB捕获记录,并将其推送到博客存储。 我已经用azure函数cosmos DB trigger解决了上面的问题(它将捕获对cosmos DB容器中的记录所做的任何更改)。 如何捕捉满负荷? 要求是我必须从cosmos DB容器中获取所有记录并将其推送到博客存储。 所以问题是cosmosDB触发器只有在记录有一定变化时才捕获,那么我该如何实现这个满载。 对于满载,我还

  • 问题内容: 我已经用gerrit触发器插件配置了jenkins,以验证我们推送到gerrit的每个提交。我希望此触发器将我的最新更改包含在原始回购中并进行构建。但是,它只是克隆回购项目并无需我的更改即可进行编译。 下面是我在詹金斯中的Gerrit触发器的配置设置。 以下是构建输出消息 在这里701a75ef38aa191ac1b806c48e6b3451671888f6是repo分支的HEAD,而

  • 我已经到处找了,我一辈子也找不到服务器来安装dynamodb触发器。 我使用了: 我尝试了一个硬编码的arn,没有发生任何事情,我可以在aws控制台上看到。我是新服务器。如果你有任何建议,请张贴。

  • 问题内容: 我正在尝试监视控制器中服务的更改。我在这里基于stackoverflow的许多qns尝试了各种方法,但是我一直无法使其工作。 的HTML: javascript: 如何使手表在控制器中触发? jsfiddle 问题答案: 尝试通过这种方式写: 演示版 [编辑] 有时,这种方式将不起作用,特别是如果服务已从3d party更新。 为了使其工作,我们必须 帮助 调整点火消化周期。 这是一个

  • 问题内容: 我喜欢Flask的错误捕获。很简单: 就像魅力。但这对于500错误代码不起作用。当出现问题时,我想捕获Python错误,代码中引发了异常。那可能吗? 我应该注意,如果我显式调用视图,则500错误处理程序确实可以工作。因此,这明确适用于Python代码失败的情况。 问题答案: 默认情况下,你所描述的是Flask的工作方式。我的假设是你正在调试模式下运行,因此在调试屏幕中会向你显示异常。确