Share via


Dinamikus SQL a Synapse SQL-ben

Ebben a cikkben tippeket talál a dinamikus SQL használatához és a Synapse SQL használatával történő megoldások fejlesztéséhez.

Dinamikus SQL-példa

Az alkalmazáskód fejlesztésekor előfordulhat, hogy dinamikus SQL-t kell használnia a rugalmas, általános és moduláris megoldások biztosításához.

Megjegyzés

A dedikált SQL-készlet jelenleg nem támogatja a blob adattípusokat. Ha nem támogatja a blob adattípusokat, az korlátozhatja a sztringek méretét, mivel a blob adattípusok közé tartozik a varchar(max) és az nvarchar(max) típus is. Ha ezeket a típusokat használta az alkalmazáskódban nagy sztringek létrehozásához, akkor a kódot darabokra kell bontania, és ehelyett az EXEC utasítást kell használnia.

Egy egyszerű példa:

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);

Ha a sztring rövid, a szokásos módon használhatja a sp_executesql .

Megjegyzés

A dinamikus SQL-ként végrehajtott utasításokra továbbra is az összes T-SQL érvényesítési szabály vonatkozik.

Következő lépések

További fejlesztési tippekért tekintse meg a fejlesztés áttekintését.