Simptomai
Apsvarstykite šį scenarijų:
-
Turite duomenų bazę, kuri yra "Microsoft SQL Server 2012" arba "SQL Server 2014" įgalinta duomenų bazė, kurioje yra "Microsoft SQL Server" arba "SQL Server"
-
Duomenų bazėje yra netuščia lentelė, kurioje yra kelių stulpelių Jungtinė indeksas. Pagrindinis klasterinis indeksas yra nustatytas į Not Null.
-
Galite pradėti operaciją ir įtraukti stulpelį į lentelę. Šio stulpelio reikšmė yra atnaujinama.
-
Pakeisite pagrindinio indekso raktą, kad būtų leidžiama nulinė reikšmė.
-
Įterpiate eilutes, kuriose yra NULL reikšmės, skirtos sudėtinio indekso pagrindiniam klavišui, tada nutraukti operaciją.
Pagal šį scenarijų keitimų atšaukimas sukelia duomenų bazę ir tik "pataisomą" su DBCC CHECKDB REPAIR_ALLOW_DATA_LOSS komanda. Be to, galite gauti šį klaidos pranešimą:
MSG 3316, lygis 21, 2 valstybė, eilutės 135, kai atšaukiate užregistruoto veiksmo duomenų bazėje "%. * LS", įvyko klaida prisijungimo įrašo ID% S_LSN. Nepavyko rasti eilutės. Atkurkite duomenų bazę iš visos atsarginės kopijos arba pataisykite duomenų bazę.
Sprendimas
"SQL Server 2014" pakeitimų paketo informacija
Norėdami išspręsti šią problemą, įsigykite "SQL Server 2014" 1 pakeitimų paketą.
Daugiau informacijos apie "SQL Server 2014" 1 pakeitimų paketą (SP1) ieškokite " SQL server 2014" 1 pakeitimų pakete ištaisytos klaidos.
"SQL Server 2012" pakeitimų paketo informacija
Norėdami išspręsti šią problemą, Įsigykite naujausią "Microsoft SQL Server" 2012 pakeitimų paketą. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2755533 Kaip įsigyti naujausią "SQL Server 2012" pakeitimų paketą
Statusą
"Microsoft" patvirtino, kad tai yra "Microsoft" produktų, išvardytų skyriuje "taikoma", problema.