FIX: Indeks Nonclustered korupsi dapat terjadi ketika Anda menjalankan statement UPDATE kompleks dengan sedikit NOLOCK Daftar Tabel di SQL Server

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 2878968 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Pada Halaman ini

Gejala

Ketika Anda menjalankan statement UPDATE kompleks dengan sedikit NOLOCK Daftar Tabel di Microsoft SQL Server 2008, SQL Server 2012, SQL Server 2008 R2, atau SQL Server 2014, indeks nonclustered korupsi dapat terjadi. Selain itu, pesan galat berikut ini mungkin login di log kesalahan SQL Server:

Tanggalmengatakanwaktumengatakan spid # Error: 8646, keparahan: 21 negara: 1.
Tanggalmengatakanwaktumengatakan spid # gagal menemukan entri indeks dalam indeks ID 3, 2102402659, Daftar Tabel dalam database 'DatabaseNamemengatakan '. Indeks ditunjukkan korup atau ada masalah dengan pembaruan rencana saat ini. Menjalankan DBCC CHECKDB atau DBCC CHECKTABLE. Jika masalah berlanjut, hubungi dukungan produk.
Tanggalmengatakanwaktumengatakan spid # menggunakan 'dbghelp.dll' versi '4.0.5'
Tanggalmengatakanwaktumengatakan spid # ** Dump thread - spid = 0, EC = 0x0000000BD70624C0
Tanggalmengatakanwaktumengatakan spid # *** Stack Dump dikirim ke Y:\MSSQL\MSSQL10.MSSQLSERVER\MSSQL\LOG\SQLDump0003.txt
Date>Time> spid # * *******************************************************************************
Tanggalmengatakanwaktumengatakan spid # *
Tanggalmengatakanwaktumengatakan spid # * mulai STACK DUMP:
Tanggalmengatakanwaktumengatakan spid # * tanggalmengatakanwaktumengatakan spid #
Tanggalmengatakanwaktumengatakan spid # *
Tanggalmengatakanwaktumengatakan spid # * CPerIndexMetaQS::ErrorAbort - indeks korupsi
Tanggalmengatakanwaktumengatakan spid # *

Catatan
Anda dapat menerapkan petunjuk NOLOCK ke sumber Daftar Tabel dalam sebuah pernyataan. Namun, Anda tidak dapat menerapkan petunjuk NOLOCK target Daftar Tabel dalam sebuah pernyataan.

Penyebab

Masalah ini terjadi karena petunjuk NOLOCK menyebabkan permintaan salah membaca nilai-nilai dalam Daftar Tabel ketika query membaca nilai yang sama beberapa kali.

Pemecahan masalah

Edisi pertama diperbaiki pada pembaruan kumulatif berikut SQL Server.

Pembaruan kumulatif 1 untuk SQL Server 2014

11 pembaruan kumulatif untuk SQL Server 2012

Pembaruan kumulatif 7 untuk SQL Server 2012 SP1

Pembaruan kumulatif 13 untuk SQL Server 2008 SP3 CTP

Pembaruan kumulatif 9 untuk SQL Server 2008 R2 SP2

Tentang pembaruan kumulatif untuk SQL Server

Perkecil gambar iniPerbesar gambar ini
assets folding start collapsed
Setiap baru update kumulatif untuk SQL Server berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan sebelumnya pembaruan kumulatif. Memeriksa update terbaru yang kumulatif untuk SQL Server:
Perkecil gambar iniPerbesar gambar ini
assets folding end collapsed

Status

Microsoft telah mengkonfirmasi bahwa ini merupakan masalah di dalam produk Microsoft sebagaimana didaftar di dalam bagian "Applies to".

Properti

ID Artikel: 2878968 - Kajian Terakhir: 22 April 2014 - Revisi: 5.0
Berlaku bagi:
  • Microsoft SQL Server 2008 Service Pack 3, ketika digunakan dengan:
    • 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
Kata kunci: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2878968 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan oleh perangkat lunak penerjemahan mesin Microsoft, dan mungkin telah diedit oleh Masyarakat Microsoft melalui teknologi CTF dan bukan oleh seorang penerjemah profesional. Microsoft menawarkan baik artikel yang diterjemahkan oleh manusia maupun artikel hasil editan terjemahan oleh mesin/komunitas, sehingga Anda dapat mengakses semua artikel di Sentra Pengetahuan yang kami miliki dalam berbagai bahasa. Namun artikel hasil editan mesin atau bahkan komunitas tidak selalu sempurna. Artikel ini dapat mengandung kesalahan dalam hal kosa kata, sintaksis atau tatabahasa, sangat mirip dengan penutur asing yang membuat kekeliruan ketika berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab atas ketidakakuratan, kesalahan atau kerugian apa pun akibat dari kekeliruan dalam penerjemahan isi atau penggunaannya oleh pelanggan kami. Microsoft juga akan senantiasa memperbarui perangkat lunak penerjemahan mesin dan alat untuk menyempurnakan Editan Hasil Penerjemahan Mesin.
Klik disini untuk melihat versi Inggris dari artikel ini: 2878968

Berikan Masukan

 

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