症状
假设在 SQL Server 中具有筛选索引的表(用作远程服务器,并且用户没有"查看定义"权限)上运行包含聚合和联接的查询 (例如:COUNT WITH GROUP BY) 。 在此方案中,链接服务器将筛选的索引视为完整的唯一索引,并且查询返回不正确的结果。
更多信息
运行远程查询时,链接的服务器进程使用索引元数据来优化查询。 如果对所查询的数据库没有 VIEW DEFINITION 权限,元数据不会指示索引是筛选索引,并且查询优化器会认为索引是完整的唯一索引。 当没有视图定义权限供查询优化器考虑时,此修补程序会更正已筛选索引的索引元数据。
状态
Microsoft 已经确认这是一个列于“适用范围”部分的 Microsoft 产品问题。
解决方法
以下累积更新中修复了此问题SQL Server:
注意:此修补程序应应用于远程链接服务器。
关于累积更新SQL Server:
每个新的累积更新SQL Server包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看最新累积更新,了解SQL Server:
解决方法
若要解决此问题,请尝试以下方法之一:
-
删除筛选的索引。
-
向用户授予视图定义。 例如:向用户授予视图test_user;
参考
了解 Microsoft 用于描述软件更新的术语。