Simptome
Luați în considerare următorul scenariu:
- Creați un server legat în Microsoft SQL Server 2016 sau 2017 care indică spre o instanță la distanță de SQL Server 2012 sau versiuni mai recente.
- Doriți să utilizați funcția LOG() fără a specifica în mod explicit baza logaritmului (pentru a calcula un algoritm natural).
Atunci când rulați o interogare care apelează LOG() cu un argument care face referire la un tabel la distanță, atunci poate apărea o eroare de încălcare a accesului în anumite condiții (De exemplu: dacă interogarea utilizează UNION și o funcție agregată, cum ar fi SUM()).
În plus, este generat un fișier dump în instanța locală.
msg 596, nivel 21, stare 1, număr linie
Nu se poate continua execuția, deoarece sesiunea este în starea de terminare.
msg 0, nivel 20, stare 0, lineNumber
S-a produs o eroare gravă la comanda curentă. Ar trebui eliminate rezultatele, dacă există.
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft care sunt listate în secțiunea „Se aplică la”.
Rezolvare
Această problemă este remediată în următoarele actualizări cumulative pentru SQL Server:
- Actualizarea cumulativă 16 pentru SQL Server 2017
- Actualizarea cumulativă 8 pentru SQL Server 2016 SP2
Despre actualizările cumulative pentru SQL Server:
Fiecare actualizare cumulativă nouă pentru SQL Server conține toate remedierile rapide și toate remedierile de securitate care au fost incluse cu actualizarea cumulativă anterioară. Consultați cele mai recente actualizări cumulative pentru SQL Server:
- Cea mai recentă actualizare cumulativă pentru SQL Server 2017
- Cea mai recentă actualizare cumulativă pentru SQL Server 2016
Referințe
Aflați despre terminologia pe care o utilizează Microsoft pentru a descrie actualizările de software.