我正在创建一个具有 Sql 缓存依赖项的应用程序。
为此,我启用了经纪人
Alter database test ENABLE_BROKER
在我将两个新表添加到数据库之后。
但我发现我无法为我添加的新表格获得任何通知服务。
即使我使用
Alter datatbase test New_Broker
这个命令继续运行,所以我取消它没有任何成功。
你能具体说明我缺少什么吗
任何帮助都是值得的
我正在创建一个具有 Sql 缓存依赖项的应用程序。
为此,我启用了经纪人
Alter database test ENABLE_BROKER
在我将两个新表添加到数据库之后。
但我发现我无法为我添加的新表格获得任何通知服务。
即使我使用
Alter datatbase test New_Broker
这个命令继续运行,所以我取消它没有任何成功。
你能具体说明我缺少什么吗
任何帮助都是值得的
好像你在问两个问题:
如何防止 SET ENABLE_BROKER 挂起
ALTER DATABASE [YourDBName] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE
当架构更改时,您可以得到 Service Broker 的通知吗?
通知仅适用于现有表。这可能会导致您考虑尝试注册对 sys.tables 的依赖项,但是在通知查询中不允许使用系统视图和表。
您应该能够通过设置插入特殊表的 DDL 触发器来解决此问题,然后针对该表发出查询。例如:
CREATE TRIGGER [MyTrigger] ON DATABASE AFTER CREATE_TABLE AS ...