KB2962767 — LABOJUMS: kļūda "Nevar ievietot atslēgas dublikātu" rodas, kad atjaunināt tabulu, izmantojot bitkartes indeksu, kas satur nodalījuma atslēgu programmā SQL Server

Attiecas uz
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Pazīmes

Pieņemsim, ka jums ir tabula, kurā ir Microsoft SQL Server 2012 vai SQL Server 2014 indeksi, kas nav unikāli. Kad izpildāt vaicājumu, lai atjauninātu tabulu, izmantojot bitkartes indeksu, kas satur nodalījuma atslēgu, tiek parādīts šāds kļūdas ziņojums:

Piezīme

Ziņojums 2601, 14. līmenis, 1. stāvoklis, 1. rindiņa
Objekta <tabulas nosaukumā> nevar ievietot atslēgas rindas dublikātu ar unikālu indeksa <indeksa nosaukumu>. Atslēgas vērtības dublikāts ir (0 — <vērtība>).

Piezīme. Indekss nav unikāls indekss un pieļauj dublikātus.

Risinājums

Šī problēma pirmo reizi tika novērsta nākamajā SQL Server kumulatīvajā atjauninājumā.

SQL Server 2014 /en-us/help/2999197 4. kumulatīvais atjauninājums

2. kumulatīvais atjauninājums operētājsistēmai SQL Server 2012 SP2 /en-us/help/2983175

Kumulatīvais atjauninājums 11 operētājsistēmai SQL Server 2012 SP1 /en-us/help/2975396

Par SQL Server kumulatīvajiem atjauninājumiem

Katrā jaunajā SQL Server kumulatīvajā atjauninājumā ir visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā kumulatīvajā atjauninājumā. Skatiet jaunākos SQL Server kumulatīvos atjauninājumus:

      

Risinājums

Lai atrisinātu šo problēmu, iespējojiet izsekošanas karodziņu 8690, lai atspējotu spoles darbību. Tomēr šis risinājums var izraisīt veiktspējas regresiju, jo spole ir atspējota.

Statuss

Microsoft apstiprināja, ka šī ir problēma Microsoft produktos, kas norādīti sadaļā "attiecas uz".