Požymiai
Tarkime, kad vykdote užklausą su agreguotais ir sujungimais (pvz.: COUNT WITH GROUP BY) lentelėje su filtruotu indeksu "„SQL Server“", kuri naudojama kaip nuotolinis serveris, ir vartotojas neturi teisės VIEW DEFINITION. Tokiu atveju susietasis serveris filtruotą indeksą laiko visu unikaliu indeksu, o užklausa pateikia neteisingus rezultatus.
Daugiau informacijos
Kai vykdote nuotolinę užklausą, susietojo serverio procesas naudoja indekso metaduomenis, kad optimizuotų užklausą. Kai duomenų bazei, kuriai pateikta užklausa, neturite teisės RODINIO APRAŠAS, metaduomenys nenurodo, kad indeksas yra filtruotas indeksas, o užklausų optimizavimo priemonė laiko indeksą visu unikaliu indeksu. Ši pataisa ištaiso filtruoto indekso metaduomenis, kai neturite teisės PERŽIŪRĖTI APRAŠĄ, kuriuos gali apsvarstyti užklausų optimizavimo priemonė.
Būsena
„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.
Sprendimas
Ši problema išspręsta šiuose kaupiamuosiuose "„SQL Server“" naujinimuose:
- 9 kaupiamasis naujinimas, skirtas „SQL Server“ 2019
- 22 kaupiamasis naujinimas, skirtas „SQL Server“ 2017
- 15 kaupiamasis naujinimas, skirtas „SQL Server“ 2016 SP2
Pastaba: Ši pataisa turėtų būti taikoma nuotoliniam susietajam serveriui.
Apie "„SQL Server“" kaupiamuosius naujinimus:
Kiekviename naujame „SQL Server“ kaupiamajame naujinime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo įtrauktos į ankstesnį kaupiamąjį naujinimą. Peržiūrėkite naujausius "„SQL Server“" kaupiamuosius naujinimus:
- Naujausias "„SQL Server“ 2019" kaupiamasis naujinimas
- Naujausias "„SQL Server“ 2017" kaupiamasis naujinimas
- Naujausias kaupiamasis naujinimas, skirtas „SQL Server“ 2016
Sprendimo būdas
Norėdami išspręsti šią problemą, išbandykite vieną iš šių būdų:
- Pašalinkite filtruotą indeksą.
- Suteikti vartotojui rodinio aprašą. Pvz.: SUTEIKTI RODINIO APIBRĖŽIMĄ test_user;
Nuorodos
Sužinokite daugiau apie terminus, kuriuos „„Microsoft““ naudoja apibūdindama programinės įrangos naujinimus.