Remediere: Performanță problemă apare atunci când utilizați sqlncli11.dll ODBC driver pentru a accesa SQL Server într-o aplicaţie

IMPORTANT: Acest articol este tradus cu ajutorul software-ului Microsoft de traducere automată și poate fi corectat prin intermediul tehnologiei Community Translation Framework (CTF). Microsoft oferă articole traduse automat, post-editate de comunitate și articole traduse de oameni, pentru a permite accesul la toate articolele din Baza noastră de cunoștințe în mai multe limbi. Articolele traduse automat și post-editate pot conține greșeli de vocabular, sintaxă și/sau gramatică. Microsoft nu este responsabil de inexactitățile, erorile sau daunele cauzate de traducerea greșită a conținutului sau de utilizarea acestuia de către clienți. Găsiți mai multe informații despre traducerea în colaborare la http://support.microsoft.com/gp/machine-translation-corrections/ro.

Faceți clic aici pentru a vizualiza versiunea în limba engleză a acestui articol: 3041859
Simptome
Să presupunem că utilizați un driver sqlncli11.dll ODBC pentru acces la Microsoft SQL Server 2012 sau SQL Server 2014 într-o aplicaţie. Când utilizați cursorul server și SQLFetch/ SQLGetData funcție pentru a accesa unele binar mare obiect (BLOB) date în SQL Server, apare o problemă de performanţă în special pentru tipurile acoperire de date mari ca varbinary (maxim) sau varchar (maxim).
Cauză
Aceasta este o problemă de proiectare pentru implementarea SQLFetch/ SQLGetData funcţia în SQL Server 2012 ODBC driver. Când interogarea utilizează orice server cursor, driverul ODBC invocă sp_cursorfetch în timpul aplicării SQLFetch și serverul trimite toate BLOB clientului. Apoi, când este executat SQLGetData , sp_cursor aduce toate BLOB din nou. Acest lucru afectează foarte mult performanța pentru tipurile acoperire de date mari ca varbinary (maxim) sau varchar (maxim).
Rezoluţie

Informații de actualizare cumulativă

Noua implementare invocă sp_cursoroption pentru a obține TEXTPTR_ONLY înainte de a sp_cursorfetch, iar apoi utilizează sp_cursoroption pentru a pune la TEXTDATA înainte de a sp_cursor. Acest lucru poate îmbunătăți performanța.

Problema a fost rezolvată mai întâi în următoarea actualizare cumulativă de SQL Server.

Recomandare: Instalați ultimul actualizarea cumulativă pentru SQL Server
Fiecare nouă actualizare cumulativă pentru SQL Server conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în actualizarea cumulativă anterioară. Vă recomandăm să descărcați și instalați cele mai recente actualizări cumulative pentru SQL Server:
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secţiunea "Se aplică la".

Avertisment: acest articol a fost tradus automat

Proprietăți

ID articol: 3041859 - Ultima examinare: 06/24/2015 04:52:00 - Revizie: 3.0

Microsoft SQL Server 2012 Service Pack 2, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3041859 KbMtro
Feedback