0

我正在创建一个具有 Sql 缓存依赖项的应用程序。

为此,我启用了经纪人

Alter database test ENABLE_BROKER

在我将两个新表添加到数据库之后。

但我发现我无法为我添加的新表格获得任何通知服务。

即使我使用

Alter datatbase test New_Broker

这个命令继续运行,所以我取消它没有任何成功。

你能具体说明我缺少什么吗

任何帮助都是值得的

4

1 回答 1

1

好像你在问两个问题:

  1. 如何防止 SET ENABLE_BROKER 挂起

    ALTER DATABASE [YourDBName] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE

  2. 当架构更改时,您可以得到 Service Broker 的通知吗?

通知仅适用于现有表。这可能会导致您考虑尝试注册对 sys.tables 的依赖项,但是在通知查询中不允许使用系统视图和表。

您应该能够通过设置插入特殊表的 DDL 触发器来解决此问题,然后针对该表发出查询。例如:

CREATE TRIGGER [MyTrigger] ON DATABASE AFTER CREATE_TABLE AS ...
于 2011-12-03T08:47:51.573 回答