OPRAVA: Poškození dat dochází při načtení obchodní data do proměnné jazyka Transact-SQL v SQL Server 2008 R2, SQL Server 2012 nebo SQL Server 2008

Příznaky

Při spuštění dotazu, který obsahuje data velké objektu (LOB) načíst do proměnné jazyka Transact-SQL v Microsoft SQL Server 2008, Microsoft SQL Server 2012 nebo Microsoft SQL Server 2008 R2, dochází k poškození dat. Například spustíte následující dotaz kopírování dat XML z databázového sloupce XML proměnné:
Declare @OUTXML as XMLSELECT @OUTXML = DataXml FROM Table_1 WHERE id=1  

V takovém případě spustí příkaz SELECT při jiných podprocesů pokusit aktualizovat stejný sloupec XML. Toto chování může způsobit poškození dat. Dále se zobrazí jedna z následujících chybových zpráv při provést všechny čtení a zápisu operace na poškozený XML sloupec:
  • Typ dat XML je poškozen.
  • Neočekávaný konec souboru došlo k chybě.
Poznámky
  • Problému obvykle dochází při velkém zatížení souběžných operací.
  • Při použití agenta protokolu Reader pro čtení poškozených dat XML z tabulky, která je součástí publikace článku seznam pro transakční replikace, zobrazí se následující chybová zpráva:

    Typ dat XML je poškozen. (Zdroj: MSSQLServer, číslo chyby: 6611)

Příčina

K tomuto problému dochází, protože uvolnění zámku u sloupce obchodní data před obchodní data zkopírován z databázového sloupce obchodní data typu proměnné. Před dokončením procesu kopírování během kopírování všech souběžných dotazu aktualizovat stejné obchodní data. Proto dochází k poškození dat.

Řešení

Informace o kumulativní aktualizaci

Kumulativní aktualizace 7 pro SQL Server 2012

Oprava tohoto problému byla vydána nejprve v kumulativní aktualizaci 7. Další informace o možnostech získání tohoto balíčku kumulativní aktualizace pro SQL Server 2012 získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2823247 kumulativní aktualizace balíčku 7 pro SQL Server 2012
Poznámka: Vzhledem k tomu, sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2012 verzí oprav. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje tuto opravu hotfix. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2692828 SQL Server 2012 vytvoří, které byly vydány po vydání SQL Server 2012

Kumulativní aktualizace 12 pro SQL Server 2008 R2 Service Pack 1

Oprava tohoto problému byla vydána nejprve v kumulativní aktualizaci 12. Další informace o získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 R2 Service Pack 1 získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2828727 kumulativní aktualizace 12 pro SQL Server 2008 R2 Service Pack 1
Poznámka: Vzhledem k tomu, sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a verzí oprav všech oprav zabezpečení, které byly součástí předchozích SQL Server 2008 R2 Service Pack 1. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje tuto opravu hotfix. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2567616 SQL Server 2008 R2 sestavení, které byly vydány po vydání SQL Server 2008 R2 Service Pack 1

Kumulativní aktualizace 10 pro SQL Server 2008 Service Pack 3

Oprava tohoto problému byla vydána nejprve v kumulativní aktualizaci 10. Další informace o možnostech získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 Service Pack 3 získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2814783 kumulativní aktualizace balíčku 10 pro SQL Server 2008 Service Pack 3
Poznámka: Vzhledem k tomu, sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení zahrnuté předchozí SQL Server 2008 Service Pack 3 release. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje tuto opravu hotfix. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2629969 SQL Server 2008 sestavení, které byly vydány po vydání SQL Server 2008 Service Pack 3

Kumulativní aktualizace 5 pro SQL Server 2008 R2 Service Pack 2 (SP2)

Oprava tohoto problému byla vydána nejprve v kumulativní aktualizaci 5. Další informace o možnostech získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 R2 S2008 R2 SP2 klepněte na následující číslo článku databáze Microsoft Knowledge Base:
2797460 kumulativní aktualizace balíčku 5 pro SQL Server 2008 R2 S2008 R2 SP2
Poznámka: Vzhledem k tomu, sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a vydání opravit všechny opravy zabezpečení zahrnuté předchozí SQL Server 2008 R2 S2008 R2 SP2. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje tuto opravu hotfix. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2730301 SQL Server 2008 R2 sestavení, které byly vydány po vydání SQL Server 2008 R2 Service Pack 2

Stav

Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".


Vlastnosti

ID článku: 2803994 - Poslední kontrola: 10. 1. 2017 - Revize: 1

Váš názor