Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Symptomy

Typ danych kolumny w tabeli bazy danych można zmienić z ntext na nvarchar (max) na serwerze, na którym działa program Microsoft SQL Server 2012, 2014 lub 2016. Po zaktualizowaniu tabeli przez dodanie więcej niż 4 000 rekordów polecenie DBCC CHECKDB może raportować błędy podobne do następujących:

Msg 8961, poziom 16, stan 1, LineNumber Błąd tabeli: objectid, indexID, PartitionID, allocUnitID (dane typu LOB). Węzeł dane spoza wiersza na stronie (pageid), gniazdo 0, textID nie pasuje do odwołania od strony (pageid), gniazdo 0. Msg 8961, poziom 16, stan 1, LineNumber Błąd tabeli: objectid, indexID, PartitionID, allocUnitID (dane typu LOB). Węzeł dane spoza wiersza na stronie (pageid), gniazdo 0, textID nie pasuje do odwołania od strony (pageid), gniazdo 0. Msg 8929, Level 16, State 1, LineNumberobjectid, indexID, PartitionID, allocUnitID (dane typu w wierszu): Błędy występujące w danych poza wierszami o identyfikatorze należącym do rekordu o identyfikatorze RID = (RID) Wyniki polecenia DBCC dla "TableName". W przypadku obiektu "TableName" istnieją 1 wiersze na 1 stronach. CHECKTABLE znaleziono 0 błędów przydziałów i 3 błędy spójności w tabeli "TableName" (objectid). repair_allow_data_loss jest minimalnym poziomem naprawy błędów znalezionych przez polecenie DBCC CHECKTABLE (DatabaseName. TableName). Ukończono wykonywanie polecenia DBCC. Jeśli zostanie wydrukowany komunikat o błędzie, skontaktuj się z administratorem systemu.

Rozwiązanie

Ten problem został rozwiązany w następujących zbiorczych aktualizacjach programu SQL Server:

Zbiorcza aktualizacja 5 dla programu SQL Server 2016 RTM

Zbiorcza aktualizacja 2 dla programu SQL Server 2016 z dodatkiem SP1

Zbiorcza aktualizacja 4 dla programu SQL Server 2014 z dodatkiem SP2

Zbiorcza aktualizacja 11 dla programu SQL Server 2014 z dodatkiem SP1

Zbiorcza aktualizacja 7 dla programu SQL Server 2012 z dodatkiem Service Pack 3

Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki hotfix i poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:

Najnowsza Zbiorcza aktualizacja dla programu SQL Server 2016

Najnowsza Zbiorcza aktualizacja dla programu SQL Server 2014

Najnowsza Zbiorcza aktualizacja dla programu SQL Server 2012 z dodatkiem SP3

Obejście

Aby obejść ten problem po zmianie typu danych, ustaw duże typy wartości poza wierszem 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'

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".

Informacje

Dowiedz się więcej o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×