Застосовується до
SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Standard on Windows SQL Server 2016 Service Pack 2 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2019 on Windows

Ознаки

Припустимо, що ви виконуєте запит із агрегатами та об'єднанням (наприклад, за допомогою функції "ГРУПУВАТИ за") у таблиці за допомогою відфільтрованого індексу на сервері SQL Server, який використовується як віддалений сервер, і користувач не має дозволу на визначення подання. У цьому сценарії на зв'язаному сервері вважається Фільтрований індекс як повний унікальний індекс, а запит повертає неправильні результати. 

Додаткова інформація

Під час запуску віддаленого запиту процес, пов'язаний із сервером, використовує метадані індексу для оптимізації запиту. Якщо у вас немає дозволу на визначення подання для бази даних, метадані не вказують на те, що індекс – це Фільтрований індекс, а оптимізатор запитів вважає, що індекс має бути повним унікальним індексом. Це виправлення виправляє метадані індексу для відфільтрованого індексу, якщо у вас немає дозволу на подання визначення для розгляду за допомогою оптимізатора запитів.

Стан

Корпорація Майкрософт підтвердила, що це проблема в продуктах Microsoft, перелічених у розділі "застосовується до".

Спосіб вирішення

Ця проблема усунена в таких сукупних оновлень для SQL Server:

НотаткиЦе виправлення має застосовуватися до віддаленого зв'язаного сервера.

Відомості про накопичувальне оновлення для сервера SQL Server:

Кожне нове Сукупне оновлення для SQL Server містить усі поточні виправлення та всі виправлення системи безпеки, які були включені до попереднього сукупного оновлення. Ознайомтеся з найновішими сукупними оновленнями для сервера SQL Server:

Інші способи вирішення

Щоб вирішити цю проблему, виконайте одну з наведених нижче способів.

  • Видалення відфільтрованого індексу.

  • Визначення подання гранту для користувача. EX: визначення подання ГРАНТУ для test_user;

Посилання

Відомості про термінологію , яку корпорація Майкрософт використовує для опису оновлень програмного забезпечення.

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.