Příznaky
Zvažte následující scénář:
-
Máte databázi, která má zapnutou izolaci snímků nebo oprávnění čtení potvrzeného snímku v Microsoft SQL serveru 2012 nebo SQL serveru 2014.
-
Databáze obsahuje neprázdnou tabulku s clusterovaným indexem s více sloupci. Hlavní klíč clusterovaného indexu je nastaven na NOT NULL.
-
Začnete transakci a přidáte do ní sloupec. Hodnota tohoto sloupce se aktualizuje.
-
Změníte úvodní klíč clusterovaného indexu tak, aby povoloval hodnotu NULL.
-
Řádky s hodnotami NULL pro hlavní klíč clusterovaného indexu vložíte a pak transakci přerušíte.
V tomto scénáři způsobí vrácení akce, že se databáze může vycházet podezřele a je jenom "opravitelné" pomocí příkazu DBCC CHECKDB REPAIR_ALLOW_DATA_LOSS . Navíc se může zobrazit následující chybová zpráva:
Msg 3316, úroveň 21, stav 2, řádek 135 při vrácení protokolovaných operací v databázi%. * ls došlo k chybě u ID záznamu protokolu% S_LSN. Řádek nebyl nalezen. Obnovte databázi z úplného zálohování nebo ji opravte.
Řešení
Informace o aktualizaci Service Pack pro SQL Server 2014
Tento problém vyřešíte aktualizací Service Pack 1 pro SQL Server 2014.
Další informace o aktualizaci SQL Server 2014 Service Pack 1 (SP1) najdete v článku chyby opravené v aktualizaci SQL server 2014 Service Pack 1.
Informace o aktualizaci Service Pack pro SQL Server 2012
Tento problém vyřešíte pomocí nejnovější aktualizace Service Pack pro Microsoft SQL Server 2012. Další informace najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
2755533 Jak získat nejnovější aktualizaci Service Pack pro SQL Server 2012
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.