KB2950209 - الإصلاح: انتهاك الوصول عندما تكون إزاحة البداية أكبر من طول السلسلة في الدالة Substring في SQL Server

ينطبق على
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

الأعراض

لنفترض أنك تستخدم دالة Substring (التعبير والبدء والطول) في Microsoft SQL Server 2012 Service Pack 1 (SP1) التحديث التراكمي 1 (CU1) والإصدارات الأحدث أو SQL Server 2014. عندما يكون طول التعبير أكبر من 8000 وكانت البداية أكبر من طول التعبير، يحدث خرق للوصول. بالإضافة إلى ذلك، تتلقى رسالة الخطأ التالية:

ملاحظة

حدث خطأ خطير في الأمر الحالي. يجب تجاهل النتائج، إن وجدت.

الدقة

تم إصلاح المشكلة لأول مرة في التحديث التراكمي التالي ل SQL Server.
بعد تطبيق الإصلاح العاجل، يتم إرجاع تعبير فارغ عندما تكون قيمة البدء أكبر من عدد الأحرف في تعبير القيمة.

التحديث التراكمي 1 ل SQL Server 2012 SP2 /en-us/help/2976982

التحديث التراكمي 2 ل SQL Server 2014 /en-us/help/2967546

التحديث التراكمي 10 ل SQL Server 2012 SP1 /en-us/help/2954099

حول التحديثات التراكمية ل SQL Server

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

      

الحالة

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