KB2986627 - KORJAUS: PÄIVITYKSEN TILASTOT suorittaa virheellisen näytteenoton ja käsittelyn taulukossa, jonka sarakesäilön indeksi on SQL Server

Käytetään kohteeseen
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Ongelman ilmenemistapa

Oletetaan, että luot Microsoft SQL Server 2012:ssa tai SQL Server 2014:ssä palstasäilön indeksin taulukkoon, jolla on klusteroitu indeksi ja jolla ei ole klusteroimatonta indeksiä. Kun suoritat UPDATE STATISTICS -ohjelman klusteroidussa indeksissä, otoksen prosenttiosuus on väärä eivätkä histogrammin vaiheet edusta tietojen oikeaa jakautumista. Voit tarkastella tuloksia suorittamalla seuraavan komennon tilastojen päivittämisen jälkeen:

DBCC SHOW_STATISTICS ( table_or_indexed_view_name , target ) WITH STAT_HEADER

Tällöin tilastojen päivitys saattaa kestää kauemmin, ja virheelliset histogrammin vaiheet voivat heikentää optimaalista kyselyn suoritussuunnitelmaa.

Huomautus: Tämä ongelma ilmenee myös SQL Server 2012:n kumulatiivisessa päivityksessä 8 (CU8) tai sitä uudemmissa versioissa.

Ratkaisu

Ongelma korjattiin ensimmäisen kerran seuraavassa SQL Server kumulatiivisessa päivityksessä.

SQL Server 2014:n kumulatiivinen päivitys 4 /en-us/help/2999197

SQL Server 2012 SP2:n kumulatiivinen päivitys 2 /en-us/help/2983175

Tietoja SQL Serverin kumulatiivisista päivityksistä

Jokainen uusi SQL Server -kumulatiivinen päivitys sisältää kaikki edelliseen kumulatiiviseen päivitykseen sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Tutustu SQL Serverin uusimpiin kumulatiivisiin päivityksiin:

      

Vaihtoehtoinen menetelmä

Voit kiertää tämän ongelman lisäämällä taulukkoon ei-klusteroidun indeksin.

Tila

Microsoft on vahvistanut tämän olevan ongelma niissä Microsoftin tuotteissa, jotka ovat listattuna Koskee seuraavia tuotteita -osiossa.