الأعراض
لنفترض أنك قمت بتشغيل استعلام باستخدام التجميعات والصلات (على سبيل المثال: COUNT WITH GROUP BY) في جدول به فهرس تمت تصفيته في SQL Server يتم استخدامه كخادم بعيد، ولا يملك المستخدم الإذن VIEW DEFINITION. في هذا السيناريو، يعتبر الخادم المرتبط الفهرس الذي تمت تصفيته كفهرس فريد كامل، ويرجع الاستعلام نتائج غير صحيحة.
معلومات إضافية
عندما تقوم بتشغيل استعلام عن بعد، تستخدم عملية الخادم المرتبط بيانات تعريف الفهرس لتحسين الاستعلام. عندما لا يتوفر لديك الإذن "عرض تعريف" لقاعدة البيانات التي يتم الاستعلام عنها، لا تشير بيانات التعريف إلى أن الفهرس عبارة عن فهرس تمت تصفيته، ويعتبر محسن الاستعلامات الفهرس فهرسا فريدا كاملا. يعمل هذا الإصلاح على تصحيح بيانات تعريف الفهرس لفهرس تمت تصفيته عندما لا يتوفر لديك الإذن "عرض التعريف" لكي ينظر فيها محسن الاستعلامات.
الحالة
لقد أكدت Microsoft على أن هذه مشكلة في منتجات Microsoft المُدرجة في القسم "ينطبق على".
الدقة
تم تصحيح هذه المشكلة في التحديثات التراكمية التالية ل SQL Server:
- التحديث التراكمي 9 ل SQL Server 2019
- التحديث التراكمي 22 ل SQL Server 2017
- التحديث التراكمي 15 ل SQL Server 2016 SP2
ملاحظة: يجب تطبيق هذا الإصلاح على الخادم المرتبط البعيد.
حول التحديثات التراكمية ل SQL Server:
يحتوي كل تحديث تراكمي جديد ل SQL Server على جميع الإصلاحات العاجلة وجميع إصلاحات الأمان التي كانت مضمنة في التحديث التراكمي السابق. تحقق من آخر التحديثات التراكمية ل SQL Server:
- آخر تحديث تراكمي ل SQL Server 2019
- التحديث التراكمي الأخير ل SQL Server 2017
- التحديث التراكمي الأخير ل SQL Server 2016
الحل البديل
لإيجاد حل بديل لهذه المشكلة، جرب أحد الطريقتين التاليتين:
- إزالة الفهرس الذي تمت تصفيته.
- منح تعريف طريقة العرض للمستخدم. على سبيل المثال: منح تعريف طريقة العرض إلى test_user؛
المراجع
تعرّف على المصطلحات التي تستخدمها Microsoft لوصف تحديثات البرامج.