sqlcmd を使用して Azure Synapse Analytics の専用 SQL プールに接続する

[sqlcmd][sqlcmd] コマンド ライン ユーティリティを使用して、専用 SQL プールに接続し、クエリを実行します。

1.接続する

[sqlcmd][sqlcmd] の使用を開始するには、コマンド プロンプトを開いて「sqlcmd」と入力し、続けて専用 SQL プールの接続文字列を入力します。 接続文字列では、次のパラメーターが必要になります。

  • サーバー (-S): サーバー。<Server Name>.database.windows.net の形式で指定します。
  • データベース (-d): 専用 SQL プールの名前。
  • 引用符で囲まれた ID の有効化 (-I): 専用 SQL プール インスタンスに接続するには、引用符で囲まれた ID を有効にする必要があります。

SQL Server 認証を使用するには、ユーザー名とパスワードのパラメーターを追加する必要があります。

  • ユーザー (-U): サーバーのユーザー。<User> の形式で指定します。
  • パスワード (-P): ユーザーに関連付けられているパスワード。

たとえば、接続文字列は次のようになります。

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

Microsoft Entra 統合認証を使用するには、Microsoft Entra パラメーターを追加する必要があります。

  • Microsoft Entra 認証 (-G): Microsoft Entra ID を認証に使用します

たとえば、接続文字列は次のようになります。

C:\>sqlcmd -S MySqlDw.database.windows.net -d Adventure_Works -G -I

Note

Microsoft Entra ID を使って認証を行うには、Microsoft Entra 認証を有効にする必要があります。

2.クエリ

接続後、インスタンスに対してサポートされているすべての Transact-SQL ステートメントを発行できます。 この例では、クエリは対話モードで送信されます。

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

以下の例は、-Q オプションを使用する方法または SQL を sqlcmd にパイプ処理で渡す方法を使用して、バッチ モードでクエリを実行する方法を示しています。

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

次のステップ

sqlcmd で使用可能なオプションの詳細については、sqlcmd に関するドキュメントを参照してください。