Microsoft distribuie Microsoft SQL Server 2008 R2 sau Microsoft SQL Server 2008 remedieri ca un fișier descărcabil. Deoarece remedierile sunt cumulative, fiecare lansare nouă conține toate remedierile rapide și toate remedierile de securitate care au fost incluse cu SQL Server 2008 R2 anterior sau SQL Server 2008 fix release.
Simptome
Luați în considerare următorul scenariu:
-
Creați o procedură stocată comună de limbaj Runtime (CLR) pentru un Microsoft SQL Server 2008 R2 sau o bază de date Microsoft SQL Server 2008.
-
Procedura stocată CLR este implementată ca metodă statică publică care returnează o valoare întreagă în Microsoft .NET Framework.
-
Rulează o aplicație care apelează procedura stocată CLR. Procedura stocată CLR returnează o valoare corectă.
-
Efectuați unele operațiuni care recompilați planul de execuție pentru procedura CLR stocată.Notă Pentru mai multe informații despre cum să recompilați planul de execuție pentru procedura stocată, consultați secțiunea "mai multe informații".
-
Ați rulat aplicația din nou.
În acest scenariu, procedură stocată CLR incorect Returnează o valoare nulă. În plus, trebuie să reporniți serviciul SQL Server pentru a recupera de la această problemă.
Rezolvare
Informații despre actualizarea cumulativă
SQL Server 2008 Service Pack 3
Remedierea pentru această problemă a fost lansată pentru prima dată în actualizarea cumulativă 2 pentru SQL Server 2008 Service Pack 3. 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:
2633143 Pachetul de actualizare cumulativă 2 pentru SQL Server 2008 Service Pack 3Notă 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 2008 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:
2629969 SQL Server 2008 construiește care au fost lansate după ce s-a lansat SQL Server 2008 Service Pack 3 Sunt create remedieri rapide Microsoft SQL Server 2008 pentru anumite pachete de servicii SQL Server. Trebuie să aplicați o remediere rapidă SQL Server 2008 Service Pack 3 la o instalare de SQL Server 2008 Service Pack 3. În mod implicit, orice remediere rapidă furnizată într-un pachet de servicii SQL Server este inclusă în următorul pachet de servicii SQL Server.
SQL Server 2008 R2 Service Pack 1
Remedierea pentru această problemă a fost lansată pentru prima dată în actualizarea cumulativă 2 pentru SQL Server 2008 R2 Service Pack 1. Pentru mai multe informații despre cum se obține 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:
2567714 Pachetul de actualizare cumulativă 2 pentru SQL Server 2008 R2 Service Pack 1Notă 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 2008 R2 remediată. 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 Service Pack 1
SQL Server 2008 R2
Remedierea pentru această problemă a fost lansată pentru prima dată în actualizarea cumulativă 8. Pentru mai multe informații despre cum se obține acest pachet de actualizare cumulativă pentru SQL Server 2008 R2, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:
2534352 Pachetul de actualizare cumulativă 8 pentru SQL Server 2008 R2 Notă 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 2008 R2 remediată. 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:
981356 SQL Server 2008 R2 construiește care au fost lansate după ce s-a lansat SQL Server 2008 R2
Mai multe informații
Pentru a recompila planul de execuție pentru procedura stocată, efectuați oricare dintre următoarele operațiuni:
-
Rulează instrucțiunea DBCCFREEPROCCACHE .
-
Efectuați una dintre următoarele declarații împotriva unui tabel sau a unei vizualizări:
-
ALTER TABLE
-
ALTER VIEW
-
-
Rulați un plan de execuție care modifică sau șterge indexurile.
-
Efectuarea unei operațiuni de Actualizare pentru statisticile care sunt utilizate de planul de execuție. Notă Puteți să rulați o instrucțiune pentru a efectua operațiunea de Actualizare sau operațiunea de Actualizare poate fi efectuată automat.
-
Rulează instrucțiunea sp_recompile .
-
Faceți multe modificări la taste. De exemplu, utilizați un cont de utilizator care actualizează un tabel la care face referire o instrucțiune pentru a executa instrucțiunea Inserare sau Ștergere .
-
Inserați sau ștergeți mai multe rânduri dintr-un tabel care conține triggere.
-
Utilizați opțiunea cu REcompilare pentru a efectua o procedură stocată.
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.
Referințe
Pentru mai multe informații despre procedurile stocate CLR, vizitați următorul site Web MSDN:
Informații generale despre CLR proceduri stocatePentru mai multe informații despre modelul de întreținere incrementală pentru SQL Server, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:
935897 Un model de întreținere incrementală este disponibil de la echipa SQL Server pentru a livra remedieri rapide pentru problemele raportatePentru mai multe informații despre schema de denumire pentru actualizările SQL Server, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:
822499Schemă nouă de denumire pentru pachetele de actualizare software Microsoft SQL ServerPentru mai multe informații despre terminologia actualizării software-ului, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:
824684 Descrierea terminologiei standard care este utilizată pentru a descrie actualizările de software Microsoft