SQL Server TCP/IP ネットワーク プロトコル (既定) および名前付きパイプ プロトコルを使用したクライアント通信をサポートしています。 クライアントが、同じコンピューター上でデータベース エンジンのインスタンスに接続している場合は、共有メモリ プロトコルも使用できます。 プロトコルの選択には、3 つの一般的な方法があります。 sqlcmd ユーティリティで使用されるプロトコルは、次の順序で決定されます。
sqlcmd では、次に説明するように接続文字列の一部として指定されたプロトコルが使用されます。
接続文字列の一部としてプロトコルが指定されていない場合、 sqlcmd は、接続先のエイリアスの一部として定義されたプロトコルを使用します。 別名を作成して特定のネットワーク プロトコルを使用するように sqlcmd を構成するには、「クライアントが使用するサーバーの別名の作成または削除 (SQL Server Configuration Manager)」を参照してください。
プロトコルが他の方法で指定されていない場合、 sqlcmd は SQL Server Configuration Manager のプロトコル順序によって決定されるネットワーク プロトコルを使用します。
次の例では、ポート 1433 の データベース エンジン の既定のインスタンスと、ポート 1691 でリッスンしていると想定される データベース エンジン の名前付きインスタンスに接続するさまざまな方法を示しています。 一部の例では、ループバック アダプターの IP アドレス (127.0.0.1) を使用しています。 使用しているコンピューターのネットワーク インターフェイス カードの IP アドレスを使用してテストしてください。
インスタンス名を指定して、 データベース エンジン に接続します。
sqlcmd -S ComputerA
sqlcmd -S ComputerA\instanceB
IP アドレスを指定して、 データベース エンジン に接続します。
sqlcmd -S 127.0.0.1
sqlcmd -S 127.0.0.1\instanceB
TCP/IP ポート番号を指定して、 データベース エンジン に接続します。
sqlcmd -S ComputerA,1433
sqlcmd -S ComputerA,1691
sqlcmd -S 127.0.0.1,1433
sqlcmd -S 127.0.0.1,1691
TCP/IP を使用して接続するには
次に示す一般構文を使用して接続します。
sqlcmd -S tcp:<computer name>,<port number>
既定のインスタンスに接続します。
sqlcmd -S tcp:ComputerA,1433 sqlcmd -S tcp:127.0.0.1,1433
名前付きインスタンスに接続します。
sqlcmd -S tcp:ComputerA,1691 sqlcmd -S tcp:127.0.0.1,1691
名前付きパイプを使用して接続するには
次のいずれかの一般的な構文を使用して接続します。
sqlcmd -S np:\\<computer name>\<pipe name>
既定のインスタンスに接続します。
sqlcmd -S np:\\ComputerA\pipe\sql\query sqlcmd -S np:\\127.0.0.1\pipe\sql\query
名前付きインスタンスに接続します。
sqlcmd -S np:\\ComputerA\pipe\MSSQL$<instancename>\sql\query sqlcmd -S np:\\127.0.0.1\pipe\MSSQL$<instancename>\sql\query
サーバー上のクライアントから共有メモリ (ローカル プロシージャ 呼び出し) を使用して接続するには
次のいずれかの一般的な構文を使用して接続します。
sqlcmd -S lpc:<computer name>
既定のインスタンスに接続します。
sqlcmd -S lpc:ComputerA
名前付きインスタンスに接続します。
sqlcmd -S lpc:ComputerA\<instancename>