PRB: قد تتسبب CONCAT_NULL_YIELDS_NULL SET مخزنة إجراءات ترجمة

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

294942
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الأعراض
في حالة إجراء مخزن يحتوي على عبارة SET CONCAT_NULL_YIELDS_NULL العبارة تغيير الإعداد الحالي CONCAT_NULL_YIELDS_NULL سوف recompiled الإجراء كل مرة يتم فيها تنفيذ أنه. قد يؤدي هذا إلى مشاكل الأداء.
السبب
مطلوب recompilation بسبب تغيير الإعداد CONCAT_NULL_YIELDS_NULL تغيير كل من "النتيجة" و "طريقة تفسير الأوامر. في SQL Server 7.0 و SQL Server 2000 ، يتم تعيين CONCAT_NULL_YIELDS_NULL ON بشكل افتراضي مع مقاييس ANSI.

تعيين CONCAT_NULL_YIELDS_NULL إلى إيقاف في قاعدة البيانات مستوى لا العائد النتيجة المطلوبة بسبب ODBC و OLE DB تعيين هذه الخاصية إلى ON عند اتصالهم. (لأن هذا محدد، بواسطة بت واحد في حزمة اتصال منشئ ملفات التعريف SQL لا تُظهر تم يتم تعيين هذه الخاصية.)
الحل البديل
لا تقم بتعيين CONCAT_NULL_YIELDS_NULL من داخل الإجراء المخزن. الحل المستحسن استخدام ISNULL عند وصل سلاسل.

على سبيل المثال، استعلام يجب كتابتها كما يلي:
SELECT * FROM mytable WHERE name LIKE 'Xavier ' + ISNULL(@lastname,'') + '%'				
عوضاً عن مثل هذا:
SELECT * FROM mytable WHERE name LIKE 'Xavier ' + @lastname + '%'				
الرغم غير مستحسن حل بديل ستكون لإصدار عبارة SET CONCAT_NULL_YIELDS_NULL قبل تنفيذ الإجراء المخزن.
معلومات أخرى
تحتوي هذه المقالة على ارتباطات عناوين واحد فقط السبب التي الإجراءات المخزنة قد recompiled; للحصول على معلومات إضافية، انقر فوق رقم المقالة أدناه لعرضها في "قاعدة المعارف لـ Microsoft:
243586INF: إجراء مخزّن Recompilation استكشاف أخطاء

تحذير: تمت ترجمة هذا المقال تلقائياً

خصائص

رقم الموضوع: 294942 - آخر مراجعة: 01/16/2015 22:13:15 - المراجعة: 3.2

  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • kbnosurvey kbarchive kbmt kbprb KB294942 KbMtar
تعليقات