SQL dynamique dans SQL Synapse
Cet article fournit des conseils pour l’utilisation de SQL dynamique et le développement de solutions avec SQL Synapse.
Exemple de SQL dynamique
Lorsque vous développez le code d’une application, vous pouvez avoir besoin d’utiliser un SQL dynamique de façon à offrir des solutions flexibles, génériques et modulaires.
Notes
Actuellement, le pool SQL dédié ne prend pas en charge les types de données blob. Le fait de ne pas prendre en charge les types de données blob peut limiter la taille de vos chaînes, car les types de données blob incluent les types varchar(max) et nvarchar(max). Si vous avez utilisé ces types dans votre code d’application pour générer de grandes chaînes, vous devez arrêter le code en blocs et utiliser l’instruction EXEC à la place.
Voici un exemple simple :
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);
Si la chaîne est courte, vous pouvez utiliser sp_executesql normalement.
Notes
Les instructions exécutées en tant que SQL dynamique sont toujours soumises à l’ensemble des règles de validation T-SQL.
Étapes suivantes
Pour obtenir des conseils supplémentaires, consultez la vue d’ensemble du développement.