Udostępnij za pośrednictwem


Dynamiczny program SQL w usłudze Synapse SQL

W tym artykule znajdziesz wskazówki dotyczące używania dynamicznych rozwiązań SQL i opracowywania rozwiązań przy użyciu usługi Synapse SQL.

Przykład dynamicznego kodu SQL

Podczas tworzenia kodu aplikacji może być konieczne użycie dynamicznego kodu SQL w celu zapewnienia elastycznych, ogólnych i modułowych rozwiązań.

Uwaga

Dedykowana pula SQL nie obsługuje obecnie typów danych obiektów blob. Nieobsługiwalne typy danych obiektów blob mogą ograniczać rozmiar ciągów, ponieważ typy danych obiektów blob obejmują zarówno typy varchar(max) i nvarchar(max). Jeśli do tworzenia dużych ciągów użyto tych typów w kodzie aplikacji, należy zamiast tego podzielić kod na fragmenty i użyć instrukcji EXEC.

Prosty przykład:

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

Jeśli ciąg jest krótki, możesz użyć sp_executesql jak zwykle.

Uwaga

Instrukcje wykonywane jako dynamiczne sql nadal będą podlegać wszystkim regułom weryfikacji języka T-SQL.

Następne kroki

Aby uzyskać więcej porad dotyczących programowania, zobacz Omówienie programowania.