Simptomi
Pogreška pri tvrdnji može se pojaviti kada Microsoft SQL Server opetovano izvršava spremljenu proceduru koja izvodi sljedeće:
-
Uzima veliki objekt, kao što je VARCHAR (Max) ili varbinary (Max), kao argument i
-
Stvara privremenu tablicu koja je postavljena na izvršenje postupka, a
-
Koristi argument veliki objekt u privremenoj tablici.
U zapisniku pogrešaka sustava SQL Server možda ćete pronaći pogrešku u tvrdnji koja je slična sljedećoj:
Pogreškaspid datuma/vremena: 17065, težina: 16, stanje: 1.
Neuspješna tvrdnja o spid SQL Server za Datum/vrijeme : datoteka: filepath \filename, line = Linenumber nije uspjelo tvrdnja = ' ffalse ' pokuљaj pristupa isteku ručka za blob (1). Ta se pogreška može povezati s vremenom. Ako se pogreška nastavi pojavljivati i nakon ponovnog pokretanja izjave, upotrijebite DBCC CHECKDB da biste potvrdili bazu podataka za strukturni integritet ili ponovno pokrenite poslužitelj da biste osigurali da strukture podataka u memoriji nisu oštećene.
Pogreška spid datuma/vremena : 3624, težina: 20, stanje: 1.
Spid datuma/vremenaza provjeru potvrđivanja sustava nije uspjelo. Pojedinosti potražite u zapisniku pogreške sustava SQL Server. Nemogućnost deklaraciju izazvana je softverom bug ili oštećenja podataka. Da biste provjerili je li korupcija u bazi podataka, razmotrite pokretanje DBCC CHECKDB. Ako ste se dogovorili da ćete tijekom postavljanja poslati deponiju Microsoftu, mini izvatkom bit će poslane Microsoftu. Ažuriranje bi moglo biti dostupno od Microsofta u najnovijem servisnom paketu ili hitnim popravkom iz tehničke podrške.
Uzrok
SQL Server ima unutarnju logiku da onemogući predmemoriranje upita koji se odnose na velike objekte, tako da naknadna pogubljenja ne referenca one lobs (koji su stvoreni tijekom prethodnih izvođenja i stoga nisu valjani za naknadne funkcije). Ta logika nije rješila slučaj rješenja za Odgodeni naziv (DNR) u privremenim tablicama koja su uzrokovala predmemoriranje tih planova. Privremene tablice u opsegu skupe su za stvaranje, a SQL poslužitelj ih sprema za ponovnu upotrebu u kasnijim pogubljenim izvršenjima. Time se sprječava ponovno sastavljanje takvih upita zbog promjena sheme.
Saznajte više o rešenog rješenja naziva.
Rješenje
Taj je problem riješen u sljedećim kumulativnim ažuriranjima za SQL Server:
Kumulativno ažuriranje 8 za SQL Server 2016 SP1
Kumulativno ažuriranje 4 za SQL Server 2017
Kumulativno ažuriranje 10 za SQL Server 2014 Service Pack 2
Svako novo Kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sigurnosne popravke koji su bili u prethodnoj izradi. Pogledajte najnovije Kumulativno ažuriranje za SQL Server:
Najnovije Kumulativno ažuriranje za SQL Server 2016
Najnovije Kumulativno ažuriranje za SQL Server 2017
najnovija kumulativna ažuriranja za SQL Server 2014
Status
Microsoft je potvrdio da se radi o problemu u Microsoftovim proizvodima navedenim u odjeljku "odnosi se na".
Reference
Saznajte više o terminologiji koju Microsoft koristi za opisivanje softverskih ažuriranja.