Príznaky
Predpokladajme, že spustíte dotaz s agregátmi a spojeniami (napríklad: COUNT WITH GROUP BY) v tabuľke s filtrovaným indexom na serveri SQL Server, ktorý sa používa ako vzdialený server, a používateľ nemá povolenie na zobrazenie definície. V tomto scenári prepojený server považuje filtrované index za úplný jedinečný index a dotaz vráti nesprávne výsledky.
Ďalšie informácie
Keď spustíte vzdialený dotaz, proces prepojeného servera používa metaúdaje indexu na optimalizáciu dotazu. Ak nemáte povolenie na DEFINÍCIU pre databázu, v metaúdajoch sa neuvádza, že index je filtrovaný index a Optimalizácia dotazu považuje index za úplný jedinečný index. Táto oprava opravuje metaúdaje indexu pre filtrované indexy v prípade, že nemáte povolenie na zobrazenie definície na zváženie pomocou nástroja na zváženie pre optimalizáciu dotazov.
Stav
Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.
Riešenie
Tento problém je vyriešený v nasledujúcich kumulatívnych aktualizáciách pre SQL Server:
PoznámkaTáto oprava by sa mala použiť na vzdialený prepojený server.
Informácie o kumulatívnych aktualizáciách pre SQL Server:
Každá nová Kumulatívna aktualizácia pre SQL Server obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej kumulatívnej aktualizácie. Pozrite si najnovšie kumulatívne aktualizácie pre SQL Server:
Alternatívne riešenie
Ak chcete tento problém obísť, vyskúšajte niektorý z týchto postupov:
-
Odstránenie filtrovaného indexu.
-
Pridelí používateľovi definíciu zobrazenia. Zk: udelenie definície zobrazenia na test_user;
Odkazy
Oboznámte sa s terminológiou , ktorú spoločnosť Microsoft používa na popis aktualizácií softvéru.