0

这是我的棘手问题。关于如何从数据库推送数据而不是应用程序拉数据。

通过链接和文件后,我知道我需要在应用程序端编写一个查询以获取通知请求,然后数据库将在订阅中注册我的请求,如果数据库有任何更改,它将检查订阅,如果请求在那里它会将消息发送给客户端。

此段来自上述链接

Along with the query submitted for the notification, the client submits a service name
and a broker instance. Each notification subscription begins a Service Broker dialog 
with this provided service and broker instance. When data is changed and the change 
would affect the result of the submitted query result, a message is sent on this   
dialog. By sending this message, the client is considered notified and the notification 
subscription is removed. If client desires to be notified on further changes, is  
supposed to subscribe again.

现在我不知道如何在应用程序端为通知请求编写查询,而且我不理解submit a service and a broker instance上面给出的段落。我猜在查询数据库以获取通知请求之前,需要在应用程序中创建服务和代理实例。如果是这样,如何创建服务和代理实例?

select * from sys.dm_qn_subscriptions我可以通过命令检查数据库服务器的订阅。谁能帮我?

4

1 回答 1

0

可能您没有完全理解上一个问题的答案,所以我将尝试澄清一些事情:

我猜在查询数据库以获取通知请求之前,需要在应用程序中创建服务和代理实例。如果是这样,如何创建服务和代理实例?

服务代理是 SQL Server 的一个组件,您无需实例化或创建它。您启用它 - 这是执行此操作的 SQL Server 管理任务。

要创建新服务,您必须首先为其创建队列合同以进行通信。然后你创建你的服务

当您创建服务时,实例化、激活和其他相关操作由 Service Broker 处理。

于 2013-06-30T17:52:06.650 回答