Připojení k Synapse SQL pomocí sqlcmd
Nástroj příkazového řádku sqlcmd můžete použít k připojení a dotazování bezserverového fondu SQL a vyhrazeného fondu SQL v rámci Synapse SQL.
1. Připojení
Pokud chcete začít s sqlcmd, otevřete příkazový řádek a zadejte sqlcmd následovaný připojovací řetězec pro vaši databázi Synapse SQL. Připojovací řetězec bude muset mít následující parametry:
- Server (-S): Server ve formátu
<
Název>
serveru ondemand.sql.azuresynapse.net (bezserverový fond SQL) nebo<
Server Name.sql.azuresynapse.net>
(Vyhrazený fond SQL) - Databáze (-d): Název databáze
- Povolit uvozované identifikátory (-I): Uvozové identifikátory musí být povolené pro připojení k instanci Synapse SQL.
Pokud chcete použít ověřování SQL Serveru, musíte přidat parametry uživatelského jména a hesla:
- User (-U): Uživatel serveru v následující podobě:
<
Uživatel>
- Heslo (-P): Heslo přidružené k uživateli
Váš připojovací řetězec může vypadat jako v následujícím příkladu:
Bezserverový fond SQL
C:\>sqlcmd -S partyeunrt-ondemand.sql.azuresynapse.net -d demo -U Enter_Your_Username_Here -P Enter_Your_Password_Here -I
Vyhrazený fond SQL
C:\>sqlcmd -S MySqlDw.sql.azuresynapse.net -d Adventure_Works -U myuser -P myP@ssword -I
Pokud chcete použít integrované ověřování Microsoft Entra, musíte přidat parametry Microsoft Entra:
- Ověřování Microsoft Entra (-G): Pro ověřování použijte ID Microsoft Entra.
Vaše připojovací řetězec může vypadat jako v následujících příkladech:
Bezserverový fond SQL
C:\>sqlcmd -S partyeunrt-ondemand.sql.azuresynapse.net -d demo -G -I
Vyhrazený fond SQL
C:\>sqlcmd -S MySqlDw.sql.azuresynapse.net -d Adventure_Works -G -I
Poznámka:
K ověření pomocí služby Active Directory musíte povolit ověřování Microsoft Entra.
2. Dotaz
Použití vyhrazeného fondu SQL
Po připojení můžete vydat všechny podporované příkazy Jazyka Transact-SQL (T-SQL) pro instanci. V tomto příkladu se dotazy odesílají v interaktivním režimu:
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
V případě vyhrazeného fondu SQL vám následující příklady ukážou, jak spouštět dotazy v dávkovém režimu pomocí možnosti -Q nebo propojení SQL do 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
Použití bezserverového fondu SQL
Po připojení můžete vydat všechny podporované příkazy jazyka Transact-SQL (T-SQL) pro instanci. V následujícím příkladu se dotazy odesílají v interaktivním režimu:
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
V případě bezserverového fondu SQL vám následující příklady ukážou, jak spouštět dotazy v dávkovém režimu pomocí možnosti -Q nebo piping sql do 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
Další kroky
Další informace o možnostech sqlcmd naleznete v dokumentaci sqlcmd.