Partager via


Se connecter à Synapse SQL avec sqlcmd

Vous pouvez utiliser l’utilitaire de ligne de commande sqlcmd pour vous connecter au pool SQL serverless et interroger le pool SQL dédié dans Synapse SQL.

1. Se connecter

Pour commencer à utiliser sqlcmd, ouvrez l’invite de commandes et entrez sqlcmd suivi de la chaîne de connexion de votre base de données Synapse SQL. La chaîne de connexion nécessite les paramètres suivants :

  • Serveur (-S) : Serveur sous la forme <Nom>Serveur-ondemand.sql.azuresynapse.net(pool SQL sans serveur) ou <Nom Serveur.sql.azuresynapse.net>(pool SQL dédié)
  • Base de données (-d) : Nom de la base de données
  • Activer les identificateurs entre guillemets (-I) : Les identificateurs entre guillemets doivent être activés pour se connecter à une instance Synapse SQL

Pour utiliser l’authentification SQL Server, vous devez ajouter les paramètres de nom d’utilisateur et de mot de passe :

  • Utilisateur (-U) : Utilisateur serveur dans le formulaire <Utilisateur>
  • Mot de passe (-P) : Mot de passe associé à l’utilisateur

Votre chaîne de connexion peut ressembler à l’exemple suivant :

Pool SQL sans serveur

C:\>sqlcmd -S partyeunrt-ondemand.sql.azuresynapse.net -d demo -U Enter_Your_Username_Here -P Enter_Your_Password_Here -I

Pool SQL dédié

C:\>sqlcmd -S MySqlDw.sql.azuresynapse.net -d Adventure_Works -U myuser -P myP@ssword -I

Pour utiliser l’authentification intégrée Microsoft Entra, vous devez ajouter les paramètres Microsoft Entra :

  • Authentification Microsoft Entra (-G) : utilisez l’ID Microsoft Entra pour l’authentification

Votre chaîne de connexion peut ressembler aux exemples suivants :

Pool SQL sans serveur

C:\>sqlcmd -S partyeunrt-ondemand.sql.azuresynapse.net -d demo -G -I

Pool SQL dédié

C:\>sqlcmd -S MySqlDw.sql.azuresynapse.net -d Adventure_Works -G -I

Note

Vous devez activer l’authentification Microsoft Entra pour s’authentifier à l’aide d’Active Directory.

2. Requête

Utiliser un pool SQL dédié

Après la connexion, vous pouvez émettre toutes les instructions Transact-SQL (T-SQL) prises en charge par rapport à l’instance. Dans cet exemple, les requêtes sont envoyées en mode interactif :

C:\>sqlcmd -S MySqlDw.sql.azuresynapse.net -d Adventure_Works -U myuser -P myP@ssword -I
1> SELECT name FROM sys.tables;
2> GO
3> QUIT

Pour le pool SQL dédié, les exemples suivants vous montrent comment exécuter des requêtes en mode batch à l’aide de l’option -Q ou de diriger votre sql vers sqlcmd :

sqlcmd -S MySqlDw.sql.azuresynapse.net -d Adventure_Works -U myuser -P myP@ssword -I -Q "SELECT name FROM sys.tables;"
"SELECT name FROM sys.tables;" | sqlcmd -S MySqlDw.sql.azuresynapse.net -d Adventure_Works -U myuser -P myP@ssword -I > .\tables.out

Utiliser un pool SQL serverless

Après la connexion, vous pouvez émettre toutes les instructions Transact-SQL (T-SQL) prises en charge par rapport à l’instance. Dans l’exemple suivant, les requêtes sont envoyées en mode interactif :

C:\>sqlcmd -S partyeunrt-ondemand.sql.azuresynapse.net -d demo -U Enter_Your_Username_Here -P Enter_Your_Password_Here -I
1> SELECT COUNT(*) FROM  OPENROWSET(BULK 'https://azureopendatastorage.blob.core.windows.net/censusdatacontainer/release/us_population_county/year=20*/*.parquet', FORMAT='PARQUET')
2> GO
3> QUIT

Pour le pool SQL serverless, les exemples suivants vous montrent comment exécuter des requêtes en mode batch à l’aide de l’option -Q ou de l’exécution de votre sql vers sqlcmd :

sqlcmd -S partyeunrt-ondemand.sql.azuresynapse.net -d demo -U Enter_Your_Username_Here -P 'Enter_Your_Password_Here' -I -Q "SELECT COUNT(*) FROM  OPENROWSET(BULK 'https://azureopendatastorage.blob.core.windows.net/censusdatacontainer/release/us_population_county/year=20*/*.parquet', FORMAT='PARQUET')"
"SELECT COUNT(*) FROM  OPENROWSET(BULK 'https://azureopendatastorage.blob.core.windows.net/censusdatacontainer/release/us_population_county/year=20*/*.parquet', FORMAT='PARQUET')" | sqlcmd -S partyeunrt-ondemand.sql.azuresynapse.net -d demo -U Enter_Your_Username_Here -P 'Enter_Your_Password_Here' -I > ./tables.out

Étapes suivantes

Pour plus d’informations sur les options sqlcmd, consultez la documentation sqlcmd.