KB4575689 – ÅTGÄRDAT: Felaktiga resultat kan uppstå när du kör en länkad serverfråga med mängder eller kopplingar i en tabell med filtrerat index på en fjärrserver i SQL Server

Gäller för
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

Symptom

Anta att du kör en fråga med mängder och kopplingar (till exempel: COUNT WITH GROUP BY) i en tabell med filtrerat index i SQL Server som används som fjärrserver, och användaren har inte behörigheten VIEW DEFINITION. I det här scenariot betraktar den länkade servern det filtrerade indexet som ett fullständigt unikt index och frågan returnerar felaktiga resultat.

Mer information

När du kör en fjärrfråga använder den länkade serverprocessen indexmetadata för att optimera frågan. När du inte har behörigheten VISA DEFINITION för databasen som efterfrågas indikerar inte metadata att indexet är ett filtrerat index och frågeoptimeraren anser att indexet är ett fullständigt unikt index. Den här korrigeringen korrigerar indexmetadata för ett filtrerat index när du inte har behörigheten VISA DEFINITION för att övervägas av frågeoptimeraren.

Status

Microsoft har bekräftat att detta är ett problem i de Microsoft-produkter som anges i avsnittet "Gäller".

Lösning

Det här problemet åtgärdas i följande kumulativa uppdateringar för SQL Server:

Notera: Den här korrigeringen ska tillämpas på den fjärrlänkade servern.

Om kumulativa uppdateringar för SQL Server:

Varje ny kumulativ uppdatering för SQL Server innehåller alla snabbkorrigeringar och alla säkerhetskorrigeringar som ingick i den tidigare kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:

Lösning

Prova någon av följande metoder för att kringgå problemet:

  • Ta bort det filtrerade indexet.
  • Bevilja användaren en vydefinition. Exempel: BEVILJA VYDEFINITION TILL test_user;

Referenser

Läs om den terminologi som Microsoft använder för att beskriva programuppdateringar.