Dynamický SQL v Synapse SQL
V tomto článku najdete tipy pro používání dynamického SQL a vývoj řešení pomocí Synapse SQL.
Příklad dynamického SQL
Při vývoji kódu aplikace možná budete muset použít dynamický SQL, který vám pomůže poskytovat flexibilní, obecná a modulární řešení.
Poznámka
Vyhrazený fond SQL v tuto chvíli nepodporuje datové typy objektů blob. Nepodporování datových typů objektů blob může omezit velikost řetězců, protože datové typy objektů blob zahrnují typy varchar(max) i nvarchar(max). Pokud jste tyto typy použili v kódu aplikace k vytváření velkých řetězců, musíte kód rozdělit na bloky dat a místo toho použít příkaz EXEC.
Jednoduchý příklad:
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);
Pokud je řetězec krátký, můžete použít sp_executesql jako obvykle.
Poznámka
Příkazy spouštěné jako dynamický SQL budou nadále podléhat všem ověřovacím pravidlům T-SQL.
Další kroky
Další tipy pro vývoj najdete v přehledu vývoje.