ديناميكي SQL في Synapse SQL

في هذه المقالة، ستجد تلميحات حول استخدام SQL الديناميكي وتطوير الحلول باستخدام Synapse SQL.

مثال ديناميكي SQL

عند تطوير التعليمة البرمجية للتطبيق، قد تحتاج إلى استخدام SQL الديناميكي للمساعدة في تقديم حلول مرنة وعامة ونمطية.

ملاحظة

لا يدعم تجمع SQL المخصص أنواع بيانات كائن ثنائي كبير الحجم في الوقت الحالي. قد يؤدي عدم دعم أنواع بيانات كائن ثنائي كبير الحجم إلى تقييد حجم السلاسل نظراً لأن أنواع بيانات الكائن الثنائي كبير الحجم تتضمن كلا النوعين 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.

الخطوات التالية

لمزيد من نصائح التطوير، راجع نظرة عامة على التطوير.