Dela via


Dynamisk SQL i Synapse SQL

I den här artikeln hittar du tips för att använda dynamisk SQL och utveckla lösningar med Synapse SQL.

Dynamiskt SQL-exempel

När du utvecklar programkod kan du behöva använda dynamisk SQL för att leverera flexibla, generiska och modulära lösningar.

Anmärkning

Den dedikerade SQL-poolen stöder för närvarande inte blobdatatyper. Om du inte stöder blobdatatyper kan du begränsa storleken på dina strängar eftersom blobdatatyperna innehåller både varchar(max) och nvarchar(max). Om du har använt dessa typer i programkoden för att skapa stora strängar måste du dela upp koden i segment och använda EXEC-instruktionen i stället.

Ett enkelt exempel:

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

Om strängen är kort kan du använda sp_executesql som vanligt.

Anmärkning

Instruktioner som körs som dynamisk SQL omfattas fortfarande av alla T-SQL-verifieringsregler.

Nästa steg

Fler utvecklingstips finns i utvecklingsöversikt.