KB3213240 - ISPRAVKA: Promena tipa podataka, a zatim ažuriranje tabele sa više od 4.000 zapisa uzrokuje oštećenje baze podataka

Radite bilo gde na bilo kom uređaju sa uslugom Microsoft 365

Nadogradite na Microsoft 365 da biste radili bilo gde sa najnovijim funkcijama i ispravkama.

Nadogradi odmah

Simptomi

Tip podataka kolone u tabeli baze podataka menjate iz ntext u nvarchar(max) na serveru koji radi pod sistemom Microsoft SQL Server 2012, 2014 ili 2016. Kada ažurirate tabelu dodavanjem više od 4.000 zapisa, DBCC CHECKDB može da prijavi greške koje su slične sledećim:

Msg 8961, Nivo 16, Država 1, Broj linija Greška tabele: ID objekta, IDindeksa , ID particije, allocUnitID (ukucaj LOB podatke). Vansudski kredom nastranici ( ID stranice), slot 0, ID teksta se ne podudara sa njegovom referencom sa stranice (ID stranice), slot 0. Msg 8961, Nivo 16, Država 1, Broj linija Greška tabele: ID objekta, IDindeksa , ID particije, allocUnitID (ukucaj LOB podatke). Vansudski kredom nastranici ( ID stranice), slot 0, ID teksta se ne podudara sa njegovom referencom sa stranice (ID stranice), slot 0. Msg 8929, Level 16, State 1, LineNumberObjectID, indexID, partitionID, allocUnitID (type In-row data): Errors found in off-row data with ID owned by data record identified by RID = (RID) DBCC rezultati za 'Ime tabele'. Postoji 1 red na 1 stranici za objekat "Ime tabele". CHECKTABLE je pronašao 0 grešaka u dodeli i 3 greške u doslednosti u tabeli 'TableName' (ObjectID). repair_allow_data_loss je minimalni nivo opravke za greške koje je pronašao DBCC CHECKTABLE (DatabaseName.TableName). Izvršavanje DBCC-a je dovršeno. Ako je DBCC odštampao poruke o greškama, obratite se administratoru sistema.

Rešenje

Ovaj problem je rešen u sledećim kumulativnim ispravkama za SQL Server:

Kumulativna ispravka 5 za SQL Server 2016 RTM

Kumulativna ispravka 2 za SQL Server 2016 SP1

Kumulativna ispravka 4 za SQL Server 2014 SP2

Kumulativna ispravka 11 za SQL Server 2014 SP1

Kumulativna ispravka 7 za SQL Server 2012 servisni paket 3

Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i bezbednosne ispravke koje su bile uključene u prethodnu kumulativnu ispravku. Pogledajte najnovije kumulativne ispravke za SQL Server:

Najnovija kumulativna ispravka za SQL Server 2016

Najnovija kumulativna ispravka za SQL Server 2014

Najnovija kumulativna ispravka za SQL Server 2012 SP3

Rešenje

Da biste zaobišli ovaj problem nakon što promenite tip podataka, postavite velike tipove vrednosti van opcijereda na 1.

ALTER TABLE TableName ALTER COLUMN COLUMN_NAME nvarchar(max) NOT NULL 
go
exec sp_tableoption 'TableName', 'large value types out of row', '1'

Status

Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".

Reference

Saznajte više o terminologiji koju Microsoft koristi za opisivanje softverskih ispravki.

Potrebna vam je dodatna pomoć?

Unapredite veštine
Istražite obuku
Prvi nabavite nove funkcije
Pridružite se Microsoft insajdere

Da li su vam ove informacije koristile?

Hvala vam na povratnim informacijama!

Hvala za povratne informacije! Izgleda da će biti od pomoći ako vas povežemo sa našim agentima Office podrške.

×