Applies ToSQL Server 2008 Service Pack 4 SQL Server 2008 R2 Service Pack 3

Simptomi

Razmotrite sljedeći scenarij:

  • U tablicu u programu Microsoft SQL Server 2008 ili u sustavu SQL Server 2008 R2 umetnete mnogo redaka pomoću jednog od sljedećih upita:

    • INSERT INTO <target_table> SELECT * FROM <target_table> WHERE <predicate>
    • SELECT * INTO <target_table> FROM <source_table> WHERE <predicate>

    Napomene

    • Rezervirano mjesto za <target_table> predstavlja stvarni Naziv ciljne tablice.

    • >rezervirano mjesto < predstavlja stvarni predit.

    • Rezervirano mjesto za <source_table> predstavlja stvarnu izvorišnu tablicu.

  • Prekoračen je prag pojačavanja blokade tablice.

U ovom scenariju modul baze podataka ne eskalira brave tablice.

Uzrok

Taj se problem pojavljuje jer SQL poslužitelj ne broji interno sve nove brave koje generira Umetanje operacija. Stoga se prag eskalacije blokade možda neće pokrenuti kada je to potrebno.

Rješenje

Informacije o servisnom paketu za SQL Server 2008

Da biste riješili taj problem, Nabavite najnoviji servisni paket za SQL Server 2008. Dodatne informacije potražite u članku iz Microsoftove baze znanja pod sljedećim brojem:

968382 Kako nabaviti najnoviji servisni paket za SQL Server 2008

Informacije o servisnom paketu za SQL Server 2008 R2

Da biste riješili taj problem, Nabavite najnoviji servisni paket za SQL Server 2008 R2. Dodatne informacije potražite u članku iz Microsoftove baze znanja pod sljedećim brojem:

2527041Kako nabaviti najnoviji servisni paket za SQL Server 2008 R2

Status

Microsoft je potvrdio da se radi o problemu u Microsoftovim proizvodima navedenim u odjeljku "odnosi se na".Taj je problem prvi put ispravljen u sustavu SQL Server 2008 Service Pack 2 za SQL Server 2008. taj je problem prvi put ispravljen u sustavu SQL Server 2008 R2 Service Pack 1 za SQL Server 2008 R2.

Dodatne informacije

Dodatne informacije o zaključanom eskalaciji potražite na sljedećem web-mjestu sustava Microsoft TechNet:

Općenite informacije o zaključanom eskalacijiDa biste utvrdili jesu li brave tablice eskalirane, pokrenite sljedeće naredbe Transact-SQL:

USE tempdbGOCREATE TABLE x (i INT NOT NULL PRIMARY KEY)GOBEGIN TRANINSERT xSELECT TOP (40000)ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS rFROM master..spt_values a, master..spt_values bORDER BYrSELECTCOUNT(*)FROM sys.dm_tran_locksWHERE request_session_id = @@SPID ROLLBACKGODROP TABLE x 

Ako su brave tablice eskalirane, posljednja naredba SELECT vraća vrijednost 1 ili 2. Ako brave tablice nisu eskalirane, posljednja naredba SELECT vraća vrijednost 40.066 ili 40.067.

Potrebna vam je dodatna pomoć?

Želite dodatne mogućnosti?

Istražite pogodnosti pretplate, pregledajte tečajeve za obuku, saznajte kako zaštititi uređaj i još mnogo toga.

Zajednice vam pomažu da postavljate pitanja i odgovarate na njih, pošaljete povratne informacije i čujete se sa stručnjacima s bogatim znanjem.