الأعراض

افترض انك تستخدم برنامج تشغيل ODBC sqlncli11 للوصول إلى Microsoft SQL Server 2012 أو SQL Server 2014 في تطبيق. عند استخدام مؤشر الخادم والدالة سقلفيتش/ سقلجيتداتا للوصول إلى بعض البيانات الثنائية الكبيرة الحجم (BLOB) في SQL server ، تحدث مشكله الأداء بشكل خاص لأنواع البيانات الكبيرة مثل varbinary (max) أو varchar (الحد الأقصى).

السبب

هذه مشكله تصميم لتنفيذ الدالة سقلفيتش/ سقلجيتداتا في برنامج تشغيل SQL server 2012 ODBC. عندما يستخدم الاستعلام أيا من مؤشرات الخادم ، يقوم برنامج تشغيل ODBC باستدعاء sp_cursorfetch اثناء تنفيذ سقلفيتش ، ويرسل الخادم كل الكائن BLOB إلى العميل. بعد ذلك ، عند تنفيذ سقلجيتداتا ، سيقوم الsp_cursor بإحضار كل النقطتين مره أخرى. يؤثر ذلك بشكل كبير علي أداء أنواع البيانات الكبيرة مثل varbinary (max) أو varchar (max).

الحل

معلومات التحديث التراكمي

يقوم التطبيق الجديد باستدعاء sp_cursoroption للحصول علي TEXTPTR_ONLY قبل الsp_cursorfetch، ثم يستدعي sp_cursoroption لأعاده إلى التيكستداتا قبل الsp_cursor. يمكن ان يؤدي ذلك إلى تحسين الأداء. تم تصحيح المشكلة أولا في التحديث التراكمي التالي ل SQL Server.

يحتوي كل تحديث تراكمي جديد ل SQL Server علي كل الإصلاحات العاجلة وكل تصحيحات الأمان التي تم تضمينها في التحديث التراكمي السابق. من المستحسن تنزيل أحدث التحديثات التراكمية ل SQL Server وتثبيته:

الحالة

أقرت Microsoft أن هذه المشكلة تحدث في منتجات Microsoft المسردة في المقطع "تنطبق على".

هل تحتاج إلى مزيد من المساعدة؟

توسيع المهارات
استكشاف التدريب
الحصول على الميزات الجديدة أولاً
الانضمام إلى Microsoft Insider

هل كانت المعلومات مفيدة؟

ما مدى رضاك عن جودة الترجمة؟
ما الذي أثّر في تجربتك؟

نشكرك على ملاحظاتك!

×