0

これは私の以前の質問です。アプリケーションのプルデータではなく、データベースからデータをプッシュする方法について。

リンクとドキュメントを調べた後、通知要求のためにアプリケーション側でクエリを作成する必要があることがわかりました。DB はサブスクリプションに要求を登録し、DB に変更がある場合はサブスクリプションをチェックします。リクエストがあれば、クライアントにメッセージを送信します。

このパラは上記のリンクからのものです

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。また、上記のパラグラフからのスタンドも理解していません。通知要求のためにデータベースにクエリを実行する前に、アプリケーションでサービスとブローカーのインスタンスを作成する必要があると思います。もしそうなら、サービスとブローカーインスタンスを作成する方法は?

コマンドで DB サーバーのサブスクリプションを確認できますselect * from sys.dm_qn_subscriptions。誰でも私を助けることができますか?

4

1 に答える 1

0

おそらく、あなたは前の質問に対する答えを完全には理解していなかったので、いくつかのことを明確にしようと思います:

通知要求のためにデータベースにクエリを実行する前に、アプリケーションでサービスとブローカーのインスタンスを作成する必要があると思います。もしそうなら、サービスとブローカーインスタンスを作成する方法は?

サービス ブローカーは SQL Server のコンポーネントです。インスタンス化も作成もしません。それを有効にします - それを行うのは SQL Server 管理タスクです。

新しいサービスを作成するには、最初にそのサービスのキューを作成し、通信手段を持つコントラクトを作成する必要があります。次に、サービスを作成します

サービスを作成すると、インスタンス化、アクティブ化、およびその他の関連操作が Service Broker によって処理されます。

于 2013-06-30T17:52:06.650 に答える