Microsoft distribuie Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) sau Microsoft SQL Server 2012 remedieri într-un singur fișier descărcabil. Deoarece remedierile sunt cumulative, fiecare lansare nouă conține toate remedierile rapide și toate actualizările de securitate care au fost incluse cu versiunea anterioară SQL Server 2008 R2 Service Pack 1 (SP1) sau Microsoft SQL Server 2012 Update release.
Simptome
Atunci când rulați o interogare paralelă care conține o funcție de utilizator (UDA) comună în Runtime (CLR) în Microsoft SQL Server 2008 R2, este posibil să apară o excepție System. NullReferenceException sau o excepție System. InvalidOperationException . În plus, veți primi următorul mesaj de eroare:
MSG 6522, nivel 16, stat 2, linie 1A .NET Framework eroare în timpul execuției rutinei definite de utilizator sau agregat "<rutina definită de utilizator sau nume agregat>": System. NullReferenceException: referința obiectului nu este setată la o instanță a unui obiect.
Rezolvare
Informații despre actualizarea cumulativă
SQL Server 2012
Remedierea pentru această problemă a fost lansată pentru prima dată în actualizarea cumulativă 1 pentru SQL Server 2012. Pentru mai multe informații despre acest pachet de actualizare cumulativă, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:
2679368 Pachetul de actualizare cumulativă 1 pentru SQL Server 2012Notă Deoarece compilările sunt cumulative, fiecare nouă versiune de remediere conține toate remedierile rapide și toate remedierile de securitate care au fost incluse cu versiunea anterioară SQL Server 2012 fix release. Microsoft recomandă să luați în considerare aplicarea celei mai recente versiuni de remediere care conține această remediere rapidă. Pentru mai multe informații, faceți clic pe următorul număr de articol pentru a-l vedea în Baza de cunoștințe Microsoft:
2692828 SQL Server 2012 construiește care au fost lansate după ce s-a lansat SQL Server 2012 Trebuie să aplicați o remediere rapidă SQL Server 2012 la o instalare de SQL Server 2012.
Pachetul de actualizare cumulativă 5 pentru SQL Server 2008 R2 SP1
Remedierea pentru această problemă a fost lansată pentru prima dată în actualizarea cumulativă 5. Pentru mai multe informații despre cum se obține acest pachet de actualizare cumulativă pentru SQL Server 2008 R2 SP1, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:
2659694 Pachetul de actualizare cumulativă 5 pentru SQL Server 2008 R2 SP1Notă Deoarece compilările sunt cumulative, fiecare nouă versiune de remediere conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în versiunea anterioară SQL Server 2008 R2 SP1. Vă recomandăm să luați în considerare aplicarea celei mai recente versiuni de remediere care conține această remediere rapidă. Pentru mai multe informații, faceți clic pe următorul număr de articol pentru a-l vedea în Baza de cunoștințe Microsoft:
2567616 SQL Server 2008 R2 construiește care au fost lansate după ce s-a lansat SQL Server 2008 R2 SP1
Soluție de evitare
Pentru a rezolva această problemă, nu rulați o interogare care utilizează un plan de execuție în paralel. De exemplu, puteți să setați gradul Max de paralelism la 1 în configurarea serverului sau să setați opțiunea sugestie pentru interogare MAXDOP la 1.
Mai multe informații
Pentru mai multe informații despre CLR UDA, vizitați următorul site Web MSDN:
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.