我们正在使用FireDac连接到SQL Server。我们有几个查询一般没有问题。但是,如果这些查询的记录数大于50,我们就会遇到问题,即Microsoft SQL Server Management Studio中的活动监视器中的状态为已暂停。
状态为已暂停的查询只要他们显示的数据未经过编辑或类似内容就不会受到影响。但是,如果要更改挂起的查询正在使用的数据,则会阻止整个表。
例如,我们有一个包含不同任务的表,另一个表包含每个任务的不同注释。此外,任务连接到不同的用户。另外,我们有一个概述,显示一个用户的所有任务。
如果此概述的查询包含超过50条记录(即使网格只显示了10条记录),那么它将获得暂停 - 状态。如果同一个用户想要通过添加注释向其中一个任务添加新注释,那么他会存储新注释,服务器会阻止完整的任务表。
我们找到了一个解决方案,用户可以滚动浏览任务的完整概述,然后添加新评论,但为什么这有必要?有没有人有想法?
一旦用户滚动到他的所有任务并且位于网格的末尾,查询中的暂停状态就会消失,查询已完成。
有没有人对这类问题有过一些经验?
我不认为这是一个SQL Server问题,因为如果我们在Microsoft SQL Server Management Studio中运行它,同一个SQL语句不会生成挂起查询。
关心Maggi