الأعراض
عندما تقوم بملء متغير جدول بالعديد من الصفوف ، ثم ضمه إلى جداول أخرى ، قد يختار محسن الاستعلام خطه استعلام غير فعاله ، مما قد يؤدي إلى بطء أداء الاستعلام.
الحل
بعد تطبيق هذا الإصلاح العاجل ، يمكنك تشغيل علامة التتبع 2453 للسماح لمتغير جدول بتشغيل أعاده الترجمة عند تغيير عدد كاف من الصفوف. قد يسمح هذا لأسلوب تحسين الاستعلام باختيار خطه أكثر فعاليه. تم تصحيح المشكلة أولا في التحديث التراكمي التالي أو/وحزم الخدمة ل SQL Server.
تحديث تراكمي 3 ل SQL Server 2014 /en-us/help/2984923
يحتوي كل تحديث تراكمي جديد ل SQL Server علي كل الإصلاحات العاجلة وكل تصحيحات الأمان التي تم تضمينها في التحديث التراكمي السابق. اطلع علي آخر التحديثات التراكمية ل SQL Server:
حزم الخدمة تراكمية. تحتوي كل حزمه خدمه جديده علي كل التصحيحات الموجودة في حزم الخدمات السابقة ، مع اي إصلاحات جديده. توصياتنا بتطبيق أحدث حزمه خدمه والتحديث التراكمي الأخير لحزمه الخدمة هذه. لست بحاجه إلى تثبيت حزمه خدمه سابقه قبل تثبيت أحدث حزمه خدمه. استخدم الجدول 1 في المقالة التالية للعثور علي مزيد من المعلومات حول أحدث حزم الخدمة والتحديث التراكمي الأخير:
كيفيه تحديد الإصدار والإصدار ومستوي تحديث SQL Server ومكوناته
مزيد من المعلومات
عند استخدام متغير جدول في دفعه أو اجراء ، يتم التحويل البرمجي للاستعلام وتحسينه للحالة الفارغة الاوليه لمتغير الجدول. إذا كان متغير الجدول هذا يتم ملؤه بالعديد من الصفوف في وقت التشغيل ، فمن المحتمل ان تكون خطه الاستعلام التي تم تحويلها مسبقا لم تعد مثاليه. علي سبيل المثال ، قد يكون الاستعلام بالانضمام إلى متغير جدول باستخدام حلقه متداخلة لأنه عاده أكثر فعاليه لعدد الصفوف الصغير. يمكن ان تكون خطه الاستعلام هذه غير فعاله إذا تضمن متغير الجدول ملايين الصفوف. يمكن ان تكون صله التجزئة عبارة عن اختيار أفضل ضمن هذا الشرط. للحصول علي خطه استعلام جديده ، يجب أعاده التحويل البرمجي. بخلاف المستخدم الآخر أو الجداول المؤقتة ، علي الرغم من ذلك ، لا يقوم تغيير عدد الصفوف في متغير جدول بتشغيل أعاده ترجمه الاستعلام. بشكل عام ، يمكنك العمل علي هذه الخيارات (أعاده الترجمة) ، التي تملك تكلفه الحمولة الخاصة بها. تسمح علامة التتبع 2453 بالاستفادة من ميزه أعاده التحويل البرمجي للاستعلام بدون خيار (أعاده الترجمة). تختلف علامة التتبع هذه عن الخيار (أعاده الترجمة) في الجانبين الرئيسيين. (1) يستخدم العتبة نفسها لعدد الصفوف مثل الجداول الأخرى. لا يحتاج الاستعلام إلى التحويل البرمجي لكل تنفيذ بعكس الخيار (أعاده الترجمة). سيتم تشغيل أعاده التحويل البرمجي فقط عندما يتجاوز تغيير عدد الصفوف الحد المعرف مسبقا. (2) يفرض الخيار (أعاده الترجمة) الاستعلام للقاء نظره علي المعلمات وتحسين الاستعلام لها. لا تقوم علامة التتبع هذه بفرض بيكينج المعلمات.ملاحظه يجب ان تكون علامة التتبع هذه في وقت التشغيل. لا يمكنك استخدام علامة التتبع هذه مع قويريتراسيون. يجب ان يتم استخدام علامة التتبع هذه بحذر لأنها تستطيع زيادة عدد ريكومبيليس الاستعلام التي يمكنها التكلفة أكثر من المدخرات من تحسين استعلام أفضل.
الحالة
أقرت Microsoft أن هذه المشكلة تحدث في منتجات Microsoft المسردة في المقطع "تنطبق على".