Dynamisches SQL für dedizierte SQL-Pools in Azure Synapse Analytics
Dieser Artikel enthält Tipps für Entwicklungslösungen, die dynamische SQL in dedizierten SQL-Pools verwenden.
Beispiel für dynamisches SQL
Beim Entwickeln von Anwendungscode für dedizierte SQL-Pools müssen Sie möglicherweise dynamische SQL verwenden, um flexible, generische und modulare Lösungen bereitzustellen. Dedizierte SQL-Pools unterstützen derzeit keine BLOB-Datentypen.
Wenn blob-Datentypen nicht unterstützt werden, kann die Größe Ihrer Zeichenfolgen eingeschränkt werden, da Blob-Datentypen sowohl varchar(max) als auch nvarchar(max)-Typen enthalten.
Wenn Sie diese Typen in Ihrem Anwendungscode zum Erstellen großer Zeichenfolgen verwendet haben, müssen Sie den Code in Blöcke unterteilen und stattdessen die EXEC-Anweisung verwenden.
Ein einfaches Beispiel:
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);
Wenn die Zeichenfolge kurz ist, können Sie sp_executesql normal verwenden.
Hinweis
Als dynamisches SQL ausgeführte Anweisungen unterliegen weiterhin allen T-SQL-Validierungsregeln.
Nächste Schritte
Weitere Hinweise zur Entwicklung finden Sie in der Entwicklungsübersicht.