KB2998301 - PATAISYMAS: Klaida 8654, kai paleidžiate "ĮTERPTI Į ... SELECT" lentelėje su klasteriniu stulpelių saugyklos indeksu "„SQL Server“ 2014"

Taikoma
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Požymiai

Tarkime, kad turite lentelę, kurioje yra klasterinis stulpelių saugyklos indeksas "Microsoft „SQL Server“ 2014". Kai bandote įkelti duomenis į lentelę naudodami INSERT INTO ... SELECT sakinį, galite gauti šį klaidos pranešimą:

Pastaba

Klaida: 8645, Sunkumas: 17, Būsena: 1, Eilutė: 1
Laukiant, kol atminties ištekliai vykdys užklausą išteklių telkinyje "numatytasis" (2), baigėsi skirtasis laikas. Pakartotinai vykdykite užklausą.

Pastaba Kai masiniam įterpimui nepakanka atminties, „SQL Server“ bando atlikti nemasinį įterpimą su šia pataisa. Paprastai tam reikia gerokai mažiau atminties. Užklausa vis tiek neveikia, jei net nepakanka atminties nemasiniam įterpimui atlikti.

Sprendimas

Šioje pataisoje pristatoma nauja sekimo vėliavėlė 9348, naudojanti užklausų optimizavimo priemonės kardinalumo įverčius nuspręsti, ar reikia pradėti masinį įterpimą, ar ne. Jei numatomas įterptinų eilučių skaičius yra mažesnis nei 102400, „SQL Server“ nebando masiškai įterpti. Jei apskaičiuota daugiau nei 102400, pradedamas masinis įdėklas.
Problema pirmą kartą buvo išspręsta šiame kaupiamajame „SQL Server“ naujinime.

4 kaupiamasis naujinimas, skirtas „SQL Server“ 2014 /en-us/help/2999197

Apie kaupiamuosius „SQL Server“ 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:

      

Būsena

„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.