Microsoft distribuuje Microsoft SQL Server 2008 opravy ako jeden súbor na stiahnutie. Pretože opravy sú kumulatívne, každé nové vydanie obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli zahrnuté do predchádzajúceho SQL servera 2008 opraviť uvoľnenia.
Príznaky
Zoberme si nasledujúcu situáciu:
-
Spustíte paralelný dotaz, ktorý používa funkciu row_number v Microsoft SQL Server 2008.
-
Pokúšate sa spustiť dotaz pomocou poddotazu, ktorý sa nachádza v príkaze Select alebo v príkaze DML (Data Manipulation Language).
V tomto scenári sa stretnete s niektorým z nasledujúcich problémov:
-
Ak spustíte dotaz v príkaze Select mnohokrát, dostanete nesprávne výsledky.
-
Ak sa dotaz spustí v príkaze DML, tabuľka môže obsahovať nesprávne údaje. Ak tabuľka obsahuje obmedzenia, príkaz môže zlyhať s porušením obmedzenia. Príkaz Vložiť môže napríklad zlyhať a chyba porušenia primárneho kľúča sa vyskytuje, ak má tabuľka primárny kľúč.
Poznámka: Tieto problémy sa môžu vyskytnúť v niektorej z týchto situácií:
-
Môžete nastaviť možnosť pomôcka MAXDOP dotaz na hodnotu, ktorá je väčšia ako 2.
-
Možnosť Maximálna miera rovnobežnosti sa nastavuje na hodnotu, ktorá je väčšia ako 2 v konfigurácii servera.
Riešenie
Ak chcete tento problém vyriešiť, Získajte najnovší balík Service Pack pre SQL Server 2008. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na príslušné číslo článku:
968382 Získanie najnovšieho balíka Service Pack pre SQL Server 2008
Alternatívne riešenie
Ak chcete obísť tento problém, použite jednu z uvedených metód:
-
Ak ste použili jednu z nasledujúcich aktualizácií, povoľte príznak sledovania 4134:
-
Kumulatívna aktualizácia balíka 6 pre SQL Server 2008 alebo novšiu verziu balíka kumulatívnych aktualizácií pre SQL Server 2008
-
Kumulatívna aktualizácia balíka 2 pre SQL Server 2008 Service Pack 1 (SP1) alebo novšiu verziu balíka kumulatívnych aktualizácií pre SQL Server 2008 SP1
Ďalšie informácie o tom, ako povoliť príznaky sledovania, nájdete na nasledujúcej webovej lokalite MSDN:
-
-
Odkaz na sekciu alternatívne riešenie v článku databázy Microsoft Knowledge Base 970198. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na príslušné číslo článku:
970198 Oprava: pri spustení dotazu, ktorý používa funkciu row_number v SQL Server 2008, sa zobrazí nesprávny výsledok