サブスクリプションを確認する場合のクエリ通知のトラブルシューティング
通知のサブスクリプションは、クエリが実行されるデータベースに格納されます。アプリケーションが通知を受信していない場合は、通知を要求し、その直後に動的管理ビュー sys.dm_qn_subscriptions にサブスクリプションが表示されるかどうかを確認してください。SQL Server が通知イベントを生成しておらず、通知サブスクリプションも表示されない場合は、要求に使われたパラメータが無効であると考えられます。この場合、SQL Server は通知要求を拒否し、拒否した要求に関する情報が SQL Server から 2 か所に送られます。
- SQL Server エラー ログで、サブスクリプション要求のエラーの有無を確認します。
- SQL Server Profiler を使用して、クエリ通知カテゴリのイベントを表示するトレースを開始します。QN:Subscription イベントが、Event SubClass が 1 - Subscription Registered の状態で生成されている場合は、サブスクリプションが成功しています。
通知のサブスクリプションは、クエリと通知メッセージを使用して追跡されることに注意してください。既存のサブスクリプションと同じメッセージ、同じクエリ、同じ配信サービスを使用してサブスクリプションを送信すると、SQL Server は新しいサブスクリプションを作成するのではなく、既存のサブスクリプションのタイムアウトを更新します。
通常、サブスクリプション要求が無効だった場合は、SQL Server は直ちに通知を生成します。通知メッセージの本文には、サブスクリプションに関する追加情報が含まれます。
参照
概念
その他の技術情報
sys.dm_qn_subscriptions
SQL Server Profiler のリファレンス