Simptomi
Pretpostavimo da koristite SQLncli11.dll ODBC upravljački program za pristup microsoft SQL Server 2012 ili SQL Server 2014 u aplikaciji. Kada koristite kursor servera i sqlFetch/ SQLGetData funkciju za pristup nekim binarnim podacima velikog objekta (BLOB) u sql Serveru, dolazi do problema sa performansama posebno za velike tipove podataka kao što su varbinary (max) ili varchar (max).
Uzrok
Ovo je problem sa dizajnom za implementaciju SQLFetch/ SQLGetData funkcije u SQL Server 2012 ODBC upravljačkom programu. Kada upit koristi bilo koji kursor servera, ODBC upravljački program poziva sp_cursorfetch tokomimplementacije SQLFetch-a, a server šalje klijentu sav BLOB. Zatim, kada se izvrši SQLGetData,sp_cursor ponovo donosi sav BLOB. To u velikoj meri utiče na performanse velikih tipova podataka kao što su varbinary (max) ili varchar (max).
Rešenje
Kumulativne informacije o ažuriranju
Nova implementacija poziva sp_cursoroption na dobijanje TEXTPTR_ONLY pre sp_cursorfetch,a zatim poziva sp_cursoroption da je vrati na TEXTDATA pre sp_cursor. Ovo može da poboljša performanse. Problem je prvi put otklonjen u sledećoj kumulativnoj ispravki sistema SQL Server.
Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i sve bezbednosne ispravke koje su bile uključene u prethodnu kumulativnu ispravku. Preporučujemo da preuzmete i instalirate najnovije kumulativne ispravke za SQL Server:
Status
Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".