Megosztás:


Dinamikus SQL a Synapse SQL-ben

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

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 blobadattípusokat, az korlátozhatja a sztringek méretét, mivel a blob adattípusai közé tartozik a varchar(max) és az nvarchar(max) típus is. Ha az alkalmazáskódban ezeket a típusokat használta nagy sztringek létrehozásához, akkor a kódot darabkákra 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 karakterlánc rövid, akkor a sp_executesql szokásos módon használható.

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.