查询通知如何检测查询结果的变化?

8kb*_*8kb 7 sql-server-2005 sql-server service-broker

我正在使用一个旧数据库,该数据库已针对名为ColorList的表实现了查询通知。

在为不相关的问题运行服务器端跟踪时,我注意到查询

SELECT color FROM ColorList
Run Code Online (Sandbox Code Playgroud)

每 10 毫秒执行一次

这是查询通知的工作方式吗?SQL Server 是否存储原始查询的结果,然后无休止地运行查询,直到检测到更改?

Rem*_*anu 10

阅读神秘通知以了解其工作原理。如果您看到每 10 毫秒执行一次查询,则意味着您的应用程序每 10 毫秒运行一次。我的8 球告诉我你的代码没有检查通知EventArgs并且盲目地重新提交查询,尽管Info是 value Invalid,表明查询不能被通知。这是意料之中的,因为您的查询不符合查询通知限制

SELECT 语句中的投影列必须明确说明,并且表名必须由两部分名称限定