Dynamische SQL in Synapse-SQL

In dit artikel vindt u tips voor het gebruik van dynamische SQL en het ontwikkelen van oplossingen met behulp van Synapse SQL.

Voorbeeld van dynamische SQL

Bij het ontwikkelen van toepassingscode moet u mogelijk dynamische SQL gebruiken om flexibele, algemene en modulaire oplossingen te leveren.

Notitie

Toegewezen SQL-pool biedt momenteel geen ondersteuning voor blobgegevenstypen. Het niet ondersteunen van blobgegevenstypen kan de grootte van uw tekenreeksen beperken, omdat blobgegevenstypen zowel varchar(max) als nvarchar(max)-typen bevatten. Als u deze typen in uw toepassingscode hebt gebruikt om grote tekenreeksen te maken, moet u de code in segmenten splitsen en in plaats daarvan de EXEC-instructie gebruiken.

Een eenvoudig voorbeeld:

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

Als de tekenreeks kort is, kunt u sp_executesql als normaal gebruiken.

Notitie

Instructies die als dynamische SQL worden uitgevoerd, zijn nog steeds onderworpen aan alle T-SQL-validatieregels.

Volgende stappen

Zie het overzicht van ontwikkeling voor meer tips voor ontwikkeling.