FIX: Data korupcii dochádza, keď dát LOB sa načíta do premennej Transact-SQL v SQL Server 2008 R2, SQL Server 2012 alebo SQL Server 2008

Preklady článku Preklady článku
ID článku: 2803994 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Na tejto stránke

Príznaky

Keď spustíte dotaz, ktorý obsahuje veľký objekt (LOB) údaje načíta do premennej Transact-SQL v Microsoft SQL Server 2008, Microsoft SQL Server 2012 alebo Microsoft SQL Server 2008 R2, dôjde k poškodeniu údajov. Napríklad spustíte nasledujúce dotazu na skopírovanie údajov XML zo stĺpca databázy k premennej XML:
Declare @OUTXML as XML
SELECT @OUTXML = DataXml FROM Table_1 WHERE id=1 

V tejto situácii, Vyberte vyhlásenie spustí, keď ostatné vlákna sa snažiť aktualizovať stĺpci rovnaký XML. Toto správanie môže spôsobiť poškodenie údajov. Navyše dostanete jeden z nasledovných chybových hlásení pri vykonávať akékoľvek čítať a písať operácie v stĺpci poškodený XML:
  • XML dátový typ je poškodený.
  • Vyskytol sa Neočakávaný koniec súboru.
Poznámky
  • Problém sa zvyčajne vyskytuje počas vysoké zaťaženie súbežné operácie.
  • Ak použijete agenta na Log čitateľ čítať poškodený XML údaje z tabuľky, ktorá je súčasťou publikácie článku zoznam pre transakčné replikácie, dostanete nasledovné chybové hlásenie:

    XML dátový typ je poškodený. (Zdroj: MSSQLServer, číslo chyby: 6611)

Príčina

Tento problém sa vyskytuje, pretože zámok na stĺpec údajov LOB je prepustený pred dát LOB sa skopíruje z databázy stĺpec LOB údajov typ premennej. Akékoľvek súčasné dotaz môžete aktualizovať rovnakých údajov LOB pred kopírovania je kompletný počas kopírovania. Preto dôjde k poškodeniu údajov.

Riešenie

Kumulatívna aktualizácia informácií

Kumulatívna aktualizácia 7 pre SQL Server 2012

Oprava tohto problému bol prvýkrát vydaný v kumulatívnej aktualizácii 7. Ďalšie informácie o možnostiach získania tento balík Kumulatívna aktualizácia pre SQL Server 2012, po kliknutí na nasledovné číslo článku publikovaného v databáze Microsoft Knowledge Base:
2823247 Balík Kumulatívna aktualizácia 7 pre SQL Server 2012
Poznámka: Pretože stavia sú kumulatívne, každé nové opraviť vydanie obsahuje všetky rýchlych a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej SQL Server 2012 opraviť uvoľnenia. Odporúčame, aby ste zvážili, uplatňovanie najnovších opraviť uvoľnenie, ktoré túto rýchlu opravu obsahuje. Ďalšie informácie získate po kliknutí na nasledujúce číslo článku publikovaného v databáze Microsoft Knowledge Base:
2692828 SQL Server 2012 stavia, ktoré boli uvoľnené po bola vydaná SQL Server 2012

Kumulatívnej aktualizácii 12 pre SQL Server 2008 R2 Service Pack 1

Oprava tohto problému bol prvýkrát vydaný v kumulatívnej aktualizácii 12. Ďalšie informácie o možnostiach získania tento balík Kumulatívna aktualizácia pre SQL Server 2008 R2 Service Pack 1 nájdete po kliknutí na nasledovné číslo článku publikovaného v databáze Microsoft Knowledge Base:
2828727 Balík kumulatívnej aktualizácii 12 pre SQL Server 2008 R2 Service Pack 1
Poznámka: Pretože stavia sú kumulatívne, každé nové opraviť vydanie obsahuje všetky rýchlych a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL Server 2008 R2 Service Pack 1 opraviť uvoľnenia. Odporúčame, aby ste zvážili, uplatňovanie najnovších opraviť uvoľnenie, ktoré túto rýchlu opravu obsahuje. Ďalšie informácie získate po kliknutí na nasledujúce číslo článku publikovaného v databáze Microsoft Knowledge Base:
2567616 SQL Server 2008 R2 stavia, ktoré boli vydané po SQL Server 2008 R2 Service Pack 1 bola uvoľnená

Kumulatívna aktualizácia balíka 10 pre SQL Server 2008 Service Pack 3

Oprava tohto problému bol prvýkrát vydaný v Kumulatívna aktualizácia 10. Ďalšie informácie o možnostiach získania tento balík Kumulatívna aktualizácia pre SQL Server 2008 Service Pack 3, kliknite na nasledovné číslo článku publikovaného v databáze Microsoft Knowledge Base:
2814783 Kumulatívna aktualizácia balíka 10 pre SQL Server 2008 Service Pack 3
Poznámka: Pretože stavia sú kumulatívne, každé nové opraviť vydanie obsahuje všetky rýchlych a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL Server 2008 Service Pack 3 opraviť uvoľnenia. Odporúčame, aby ste zvážili, uplatňovanie najnovších opraviť uvoľnenie, ktoré túto rýchlu opravu obsahuje. Ďalšie informácie získate po kliknutí na nasledujúce číslo článku publikovaného v databáze Microsoft Knowledge Base:
2629969 SQL Server 2008 stavia, ktoré boli uvoľnené po bola vydaná SQL Server 2008 Service Pack 3

Kumulatívna aktualizácia balíka 5 pre SQL Server 2008 R2 Service Pack 2 (SP2)

Fix pre tento problém bol prvýkrát vydaný v Kumulatívnej aktualizácii 5. Ďalšie informácie o možnostiach získania tento balík Kumulatívna aktualizácia pre SQL Server 2008 R2 S2008 R2 SP2, po kliknutí na nasledovné číslo článku publikovaného v databáze Microsoft Knowledge Base:
2797460 Kumulatívna aktualizácia balíka 5 pre SQL Server 2008 R2 S2008 R2 SP2
Poznámka: Pretože stavia sú kumulatívne, každé nové opraviť vydanie obsahuje všetky rýchlych a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL Server 2008 R2 S2008 R2 SP2 opraviť uvoľnenia. Odporúčame, aby ste zvážili, uplatňovanie najnovších opraviť uvoľnenie, ktoré túto rýchlu opravu obsahuje. Ďalšie informácie získate po kliknutí na nasledujúce číslo článku publikovaného v databáze Microsoft Knowledge Base:
2730301 SQL Server 2008 R2 stavia, ktoré boli uvoľnené po bola vydaná SQL Server 2008 R2 Service Pack 2

Stav

Spoločnosť Microsoft potvrdila, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v časti „Vzťahuje sa na“.


Vlastnosti

ID článku: 2803994 - Posledná kontrola: 15. apríla 2013 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft SQL Server 2008 R2 Service Pack 2
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • SQL Server 2012 Enterprise Core
Kľúčové slová: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2803994 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem: 2803994

Odošlite odozvu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com