KB4054398-Fix: "Nevaljana usporedba zbog nikakve usporedbe" Retail tvrditi pojavljuje se u sustavu SQL Server 2014, 2016 i 2017

Simptomi

Pretpostavimo da imate upit koji izvršava neke operacije niza, primjerice, koncatenacije, u stupcima CHAR ili VARCHAR u programu Microsoft SQL Server 2014, 2016 i 2017. Razmotrite sljedeći scenarij:

  • Stupce možete priložiti s raznim kofikama koje su im dodijeljene.

  • Te su usporedbe nekompatibilne jedan s drugim. Na primjer, pokušate usporediti stupac koji je Latin1_General_CI_AI s Latin1_General_BIN.

  • Konačni rezultat spajanja dodijeljen je određenoj razvrstavanju (uključujući "database_default") u slučaju rješavanja sukoba usporedbe.

U ovom scenariju SQL Server može vratiti maloprodajnu vrijednost koja navodi da "nije valjana usporedba zbog nikakve usporedbe", a možda će vam se prikazati neke poruke o pogreškama koje nalikuju sljedećem:

Mjesto: typinfo. cpp:Linenumber Izraz: FALSE SPID: spid ID procesa: Processid Opis: Usporedba nije valjana jer nema usporedbe.

MSG 3624, razina 20, State 1, Linenumber linija Provjera potvrđivanja sustava nije uspjela. 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.

MSG 596, razina 21, State 1, Linenumber line Izvršenje nije moguće nastaviti jer je sesija u stanju ubojstva.

MSG 0, razina 20, State 0, Linenumber linija

Došlo je do ozbiljne pogreške u aktualnoj naredbi.  Rezultat, ako ih ima, trebao bi biti odbačen.

Uzrok

Tijekom faze optimizacije upita SQL poslužitelj pokušava izračunati kardinalnosti na međurezultatima različitih faza upita, na primjer, koncatenacija. Budući da se rješavanje sukoba s uspoređenjem odvija na samom kraju, Optimizator upita može biti nesvjestan toga i pokušava izvršiti računanje kardinala za spajanje na unos s sukobljenim razvrstavanjem.

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 9 za SQL Server 2014 SP2

Svako novo Kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sve sigurnosne ispravke uključene u prethodno Kumulativno ažuriranje. Pogledajte najnovija kumulativna ažuriranja za SQL Server:

Najnovije Kumulativno ažuriranje za SQL Server 2016

Najnovije Kumulativno ažuriranje za SQL Server 2017

Najnovije Kumulativno ažuriranje 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 terminologijikoju Microsoft koristi za opisivanje softverskih ažuriranja.

Potrebna vam je dodatna pomoć?

Proširite svoje vještine
Istražite osposobljavanje
Prvi koristite nove značajke
Pridružite se Microsoft Insidere

Jesu li ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×