web-dev-qa-db-ja.com

クエリ通知は、クエリ結果の変更をどのように検出しますか?

ColorListというテーブルに対するクエリ通知を実装したレガシーデータベースを使用しています。

無関係な問題のサーバー側トレースを実行しているときに、クエリに気付きました

SELECT color FROM ColorList

実行されていた10ミリ秒ごと

これはクエリ通知のしくみですか? SQL Serverは元のクエリの結果を保存し、変更を検出するまでクエリを無限に実行しますか?

7
8kb

それがどのように機能するかについての説明は 謎の通知 を読んでください。クエリが10ミリ秒ごとに実行されている場合、applicationが10ミリ秒ごとに実行していることを意味します。私の 8ボール は、コードが通知 EventArgs をチェックしないことを通知しており、 Info の値がInvalidであるにもかかわらず、盲目的にクエリを再送信しています通知できないクエリを示します。クエリは クエリ通知の制限 に準拠していないため、これは予期されることです。

SELECTステートメントの射影列は明示的に記述する必要があり、テーブル名は2部構成の名前で修飾する必要があります。

10
Remus Rusanu