إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تتضمن هذه المقالة تلميحات حول حلول التطوير باستخدام SQL الديناميكي في تجمعات SQL المخصصة.
مثال ديناميكي SQL
عند تطوير التعليمة البرمجية للتطبيق لمجموعات SQL المخصصة، قد تحتاج إلى استخدام SQL الديناميكي للمساعدة في تقديم حلول مرنة وعامة ونمطية. لا تدعم تجمعات SQL المخصصة أنواع بيانات Blob في الوقت الحالي.
قد يؤدي عدم دعم أنواع بيانات Blob إلى تقييد حجم السلاسل نظراً لأن أنواع بيانات Blob تتضمن كلا النوعين varchar (max) وnvarchar (max).
إذا كنت قد استخدمت هذه الأنواع في كود التطبيق الخاص بك لإنشاء سلاسل كبيرة، فستحتاج إلى تقسيم التعليمة البرمجية إلى أجزاء واستخدام جملة EXEC بدلاً من ذلك.
مثال بسيط:
DECLARE @sql_fragment1 VARCHAR(8000)=' SELECT name '
, @sql_fragment2 VARCHAR(8000)=' FROM sys.system_views '
, @sql_fragment3 VARCHAR(8000)=' WHERE name like ''%table%''';
EXEC( @sql_fragment1 + @sql_fragment2 + @sql_fragment3);
إذا كانت السلسلة قصيرة، يمكنك استخدام sp_executesql كالمعتاد.
ملاحظة
ستظل العبارات التي يتم تنفيذها على هيئة SQL ديناميكية خاضعة لجميع قواعد التحقق من صحة T-SQL.
الخطوات التالية
لمزيد من نصائح التطوير، راجع نظرة عامة على التطوير.