Požymiai
Apsvarstykite šį scenarijų:
Turite išsaugotą procedūrą, kuri sukuria laikiną lentelę "Microsoft „SQL Server“".
Vykdote užklausą, kad išsaugotos procedūros problemos ir užklausa atitinka tokias sąlygas:
- Užklausa nurodo laikinąją lentelę, sukurtą naudojant įrašytąją procedūrą.
- Užklausoje yra sąlyga WHERE, kurios neapima jokie indeksai, ir įjungta trūkstamų indeksų funkcija.
Tarkime, kad įrašytoji procedūra yra iškviečiama vienu metu iš kelių egzempliorių. Tada laikinosios lentelės sukuriamos ir dažnai pašalinamos, todėl dažnai kuriami ir panaikinami atitinkami trūkstamų indeksų įrašai.
Tokiu atveju, atšaukus laukiančią įrašytosios procedūros užklausą, galite gauti prieigos pažeidimo klaidą.
Sprendimas
Ši problema išspręsta šiuose kaupiamuosiuose "„SQL Server“" naujinimuose:
2 kaupiamasis naujinimas, skirtas „SQL Server“ 2017
9 kaupiamasis naujinimas, skirtas „SQL Server“ 2016 RTM
6 kaupiamasis naujinimas, skirtas „SQL Server“ 2016 SP1
8 kaupiamasis naujinimas, skirtas „SQL Server“ 2014 SP2
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“ 2017" kaupiamasis naujinimas
Naujausias kaupiamasis naujinimas, skirtas „SQL Server“ 2016
Naujausias "„SQL Server“ 2014" kaupiamasis naujinimas
Sprendimo būdas
Šią problemą galima išspręsti įgalinant sekimo vėliavėlę (TF) 2392 , kuri sustabdys trūkstamų indeksų rinkinį.
Daugiau informacijos
Norėdami gauti daugiau informacijos apie trūkstamų indeksų funkciją, žr. šį saitą:
Būsena
„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.
Nuorodos
Sužinokite daugiau apie terminus, kuriuos „„Microsoft““ naudoja apibūdindama programinės įrangos naujinimus.