Partilhar via


Conectar-se ao Synapse SQL com sqlcmd

Você pode usar o utilitário de linha de comando sqlcmd para se conectar e consultar o pool SQL sem servidor e o pool SQL dedicado no Synapse SQL.

1. Ligar

Para começar a usar o sqlcmd, abra o prompt de comando e digite sqlcmd seguido da cadeia de conexão para seu banco de dados Synapse SQL. A cadeia de ligação requer os parâmetros seguintes:

  • Servidor (-S): Servidor na forma <Nome do Servidor-ondemand.sql.azuresynapse.net(Pool SQL sem servidor) ou <Nome>> do Servidor.sql.azuresynapse.net(Pool SQL dedicado)
  • Base de dados (-d): Nome da base de dados
  • Habilitar identificadores cotados (-I): os identificadores cotados devem ser habilitados para se conectar a uma instância Synapse SQL

Para usar a Autenticação do SQL Server, você precisa adicionar os parâmetros de nome de usuário e senha:

  • User (-U): utilizador do servidor sob a forma <Utilizador>
  • Palavra-passe (-P): Palavra-passe associada ao utilizador

Sua cadeia de conexão pode se parecer com o exemplo a seguir:

Pool SQL sem servidor

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

Conjunto de SQL Dedicado

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

Para usar a autenticação integrada do Microsoft Entra, você precisa adicionar os parâmetros do Microsoft Entra:

  • Autenticação do Microsoft Entra (-G): use o ID do Microsoft Entra para autenticação

Sua cadeia de conexão pode se parecer com um dos seguintes exemplos:

Pool SQL sem servidor

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

Conjunto de SQL Dedicado

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

Nota

Você precisa habilitar a autenticação do Microsoft Entra para autenticar usando o Ative Directory.

2. Consulta

Usar pool SQL dedicado

Após a conexão, você pode emitir qualquer instrução Transact-SQL (T-SQL) suportada na instância. Neste exemplo, as consultas são enviadas no modo interativo:

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

Para pool SQL dedicado, os exemplos a seguir mostram como executar consultas em modo de lote usando a opção -Q ou canalizando seu SQL para 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

Utilizar conjunto de SQL sem servidor

Depois de se conectar, você pode emitir qualquer instrução Transact-SQL (T-SQL) suportada na instância. No exemplo a seguir, as consultas são enviadas no modo interativo:

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

Para pool SQL sem servidor, os exemplos a seguir mostram como executar consultas no modo de lote usando a opção -Q ou canalizando seu SQL para 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

Próximos passos

Para obter mais informações sobre as opções do sqlcmd, consulte a documentação do sqlcmd.