Conectați-vă cu Microsoft
Conectați-vă sau creați un cont
Salut,
Selectați un alt cont.
Aveți mai multe conturi
Alegeți contul cu care doriți să vă conectați.

Microsoft distribuie Microsoft SQL Server 2008 și Microsoft SQL Server 2008 R2 remediază 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 în anterioare SQL Server 2008 sau SQL Server 2008 R2 lansată.

Simptome

Să luăm în considerare următorul scenariu:

  • Creați o procedură stocată în Microsoft SQL Server 2008 sau în Microsoft SQL Server 2008 R2.

  • Procedură stocată utilizează o variabilă obiect binar mare (BLOB).

  • Variabila BLOB este utilizat într-o funcţie de șir.

  • Când executați o procedură stocată.

În acest scenariu, planul de interogare pentru procedura stocată este în cache.

Rezolvare

Informații despre actualizarea cumulativă

SQL Server 2008 Service Pack 1

Remedierea pentru această problemă a fost lansată prima dată în 10 de actualizare cumulativă pentru SQL Server 2008 Service Pack 1. 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:

2279604 Pachetul de actualizare cumulativă 10 pentru SQL Server 2008 Service Pack 1Notă Deoarece compilările sunt cumulative, fiecare nouă lansare de remediere conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în anterioare SQL Server 2008 lansată. Microsoft recomandă să luaţi în considerare aplicarea celei mai recente lansări 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:

970365 Compilările SQL Server 2008 lansate după lansarea SQL Server 2008 Service Pack 1 Microsoft SQL Server 2008 remedierile rapide sunt create pentru specifice SQL Server service pack. Trebuie să aplicați o remediere rapidă SQL Server 2008 Service Pack 1 pentru o instalare de SQL Server 2008 Service Pack 1. În mod implicit, orice remediere rapidă care este furnizat într-un SQL Server service pack este inclus în următorul SQL Server service pack.

SQL Server 2008 Service Pack 2

Remedierea pentru această problemă a fost lansată prima dată în 1 de actualizare cumulativă pentru SQL Server 2008 Service Pack 2. 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:

2289254 Actualizarea cumulativă 1 pentru SQL Server 2008 Service Pack 2Notă Deoarece compilările sunt cumulative, fiecare nouă lansare de remediere conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în anterioare SQL Server 2008 lansată. Vă recomandăm să luaţi în considerare aplicarea celei mai recente lansări 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:

2402659 Compilările SQL Server 2008 lansate după lansarea SQL Server 2008 Service Pack 2

SQL Server 2008 R2

Remedierea pentru această problemă a fost lansată prima dată în 4 de actualizare cumulativă. 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:

2345451 Pachetul de actualizare cumulativă 4 pentru SQL Server 2008 R2 Notă Deoarece compilările sunt cumulative, fiecare nouă lansare de remediere conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în anterioare SQL Server 2008 R2 lansată. Vă recomandăm să luaţi în considerare aplicarea celei mai recente lansări 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 se bazează pe care au fost lansate după lansarea SQL Server 2008 R2

Stare

Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.

Mai multe informații

Pentru a reproduce problema, urmați acești pași:

  1. Executați următorul cod pentru a crea două stocate proceduri ("p_test1" și "p_test2"). "P_test1" utilizează o variabilă BLOB, iar "p_test2" utilizează o variabilă nvarchar(100).use tempdbgoif OBJECT_ID('p_test1') is not null drop proc p_test1if OBJECT_ID('p_test2') is not null drop proc p_test2gocreate proc p_test1@s nvarchar(max)asbeginselect * from sys.objects where name = UPPER(@s)endgocreate proc p_test2@s nvarchar(100)asbeginselect * from sys.objects where name = UPPER(@s)endgo

  2. Executați următorul cod pentru a goli memoria cache de procedură și pentru a executa două proceduri stocate:dbcc freeproccachegoexec p_test1 N'abc'exec p_test2 N'abc'go

  3. Executați următorul cod pentru a verifica planul de cache: select object_name(CONVERT(int, a.value)), cp.*from sys.dm_exec_cached_plans cpcross apply sys.dm_exec_plan_attributes(cp.plan_handle) awhere cp.objtype = 'Proc'and a.attribute = 'objectid'

Notă Dacă există multe execuții simultane de acest tip de proceduri stocate pe un Microsoft SQL Server 2008 sau o instanță Microsoft SQL Server 2008 R2, se poate produce blocarea cauzată de compilare blochează în instanța. Pentru mai multe informații despre Descrierea SQL Server blocarea cauzate de compilare blochează, consultaţi următorul articol din baza de cunoștințe Microsoft:

263889 Descriere a SQL Server blocarea cauzate de compilare blochează

Referințe

Pentru mai multe informații despre funcțiile de șir (Transact-SQL), vizitați următorul site Web Microsoft:

Șir de funcții (Transact-SQL)Pentru mai multe informații despre ISM 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 ISM este disponibilă de la echipa SQL Server pentru livrarea remedierilor 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:

822499Noua schemă de denumire pentru pachetele de actualizare software Microsoft SQL ServerPentru mai multe informaţii despre terminologia privind actualizarea 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

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?
Apăsând pe Trimitere, feedbackul dvs. va fi utilizat pentru a îmbunătăți produsele și serviciile Microsoft. Administratorul dvs. IT va avea posibilitatea să colecteze aceste date. Angajamentul de respectare a confidențialității.

Vă mulțumim pentru feedback!

×