Poprawka: Może wystąpić uszkodzenie indeks nieklastrowany, po uruchomieniu złożonych instrukcji UPDATE wraz z wskazówki NOLOCK na tabeli w programie SQL Server

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 2878968 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Objawy

Po tabeli w Microsoft SQL Server 2008, programu SQL Server 2012, program SQL Server 2008 R2 lub SQL Server 2014 wykonywane są złożone instrukcja UPDATE wraz z wskazówki NOLOCK , może nastąpić uszkodzenie indeksu nieklastrowanego. Ponadto następujący komunikat o błędzie może być rejestrowany w dzienniku błędów programu SQL Server:

Data>czas> spid # Error: 8646, wskaźnik ważności: 21, stan: 1.
Data>czas> spid # nie można odnaleźć wpisu indeksu w indeksie ID 3, 2102402659, tabeli w bazie danych 'nazwa_bazy_danych> ". Wskazanego indeksu jest uszkodzony lub istnieje problem z bieżącego planu aktualizacji. Uruchomienie polecenia DBCC CHECKDB lub DBCC CHECKTABLE. Jeśli problem będzie się powtarzał, skontaktuj się z obsługą produktu.
Data>czas> spid # Using "dbghelp.dll" wersja "4.0.5"
Data>czas> spid # ** zrzutu wątku - spid = 0, WE = 0x0000000BD70624C0
Data>czas> spid # *** zrzut stosu wysyłane do Y:\MSSQL\MSSQL10.MSSQLSERVER\MSSQL\LOG\SQLDump0003.txt
Date>Time> spid # * *******************************************************************************
Data>czas> spid # *
Data>czas> spid # * rozpocząć ZRZUT STOSU:
Data>czas> spid # * Data>czas> spid #
Data>czas> spid # *
Data>czas> spid # * CPerIndexMetaQS::ErrorAbort - uszkodzenie indeksu
Data>czas> spid # *

Uwaga
wskazówki NOLOCK można stosować do tabel źródłowych w instrukcji. Jednakże wskazówki NOLOCK nie można zastosować do tabel docelowych w instrukcji.

Przyczyna

Ten problem występuje, ponieważ wskazówki NOLOCK powoduje, że kwerenda nieprawidłowo odczytać wartości w tabeli, gdy kwerenda odczytuje te same wartości wiele razy.

Rozwiązanie

Problem został rozwiązany po raz pierwszy w następujących aktualizacji zbiorczej programu SQL Server.

Zbiorcza aktualizacja 1 dla programu SQL Server 2014

11 aktualizację zbiorczą dla programu SQL Server 2012

Zbiorcza aktualizacja 7 programu SQL Server 2008 R2 z dodatkiem SP1

Zbiorcza aktualizacja 13 dla dodatku SP3 dla programu SQL Server 2008

Zbiorcza aktualizacja zabezpieczeń 9 dla programu SQL Server 2008 R2 z dodatkiem SP2

Aktualizacje zbiorcze dla programu SQL Server — informacje

Zwiń ten obrazekRozwiń ten obrazek
assets folding start collapsed
Każdej nowej aktualizacji zbiorczej dla programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały zawarte w poprzedniej zbiorczej aktualizacji. Sprawdź najnowsze aktualizacje zbiorcze dla programu SQL Server:
Zwiń ten obrazekRozwiń ten obrazek
assets folding end collapsed

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft, które są wymienione w sekcji "Informacje zawarte w tym artykule dotyczą".

Właściwości

Numer ID artykułu: 2878968 - Ostatnia weryfikacja: 22 kwietnia 2014 - Weryfikacja: 5.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft SQL Server 2008 Service Pack 3 na następujących platformach
    • Microsoft SQL Server 2008 Enterprise
    • Microsoft SQL Server 2008 Developer
    • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2014 Developer
  • Microsoft SQL Server 2014 Enterprise
  • Microsoft SQL Server 2014 Standard
Słowa kluczowe: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2878968 KbMtpl
Przetłumaczone maszynowo
WAŻNE: Ten artykuł został przetłumaczony przy użyciu oprogramowania firmy Microsoft do tłumaczenia maszynowego i może być poprawiony przy użyciu technologii Community Translation Framework (CTF). Firma Microsoft udostępnia artykuły tłumaczone maszynowo, poprawione przez społeczność, a także tłumaczone przez tłumaczy profesjonalnych, aby zapewnić dostęp do wszystkich artykułów w bazie wiedzy w wielu językach. Artykuły tłumaczone maszynowo i poprawione mogą zawierać błędy pisowni, składniowe i gramatyczne. Firma Microsoft nie ponosi odpowiedzialności za żadne nieścisłości, błędy ani szkody spowodowane przez niepoprawne tłumaczenia zawartości ani przez korzystanie z niej przez klientów. Więcej o strukturze CTF: http://support.microsoft.com/gp/machine-translation-corrections/pl.
Anglojęzyczna wersja tego artykułu to: 2878968

Przekaż opinię

 

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