Dynamische SQL in Synapse SQL

Tip

Microsoft Fabric Data Warehouse is een relationeel warehouse op ondernemingsniveau op data lake-basis, met een architectuur die klaar is voor de toekomst, ingebouwde AI en nieuwe functies. Als u nieuw bent in gegevenswarehousing, begin dan met Fabric Data Warehouse. Bestaande dediceerde SQL-poolworkloads kunnen upgraden naar Fabric voor toegang tot nieuwe mogelijkheden in data science, realtime analyses en rapportage.

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

Dynamisch SQL-voorbeeld

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 opsplitsen in segmenten 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 zoals gebruikelijk gebruiken.

Notitie

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

Volgende stappen

Voor meer tips over ontwikkeling, zie het overzicht van ontwikkeling.