如何:使用 sqlcmd.exe 連接到 Database Engine
SQL Server 2005 支援使用 TCP/IP 網路通訊協定 (預設值)、具名管道通訊協定與 VIA 通訊協定,來進行用戶端通訊。如果用戶端是連接到同一部電腦上的 Database Engine 執行個體,也可以使用共用記憶體通訊協定。選取通訊協定有三種常見的方法。sqlcmd 公用程式所使用的通訊協定,是以下列順序決定:
- sqlcmd 使用指定為連接字串一部份的通訊協定,如下所述。
- 如果沒有任何通訊協定指定為連接字串的一部份,sqlcmd 將使用定義為所連接之別名一部份的通訊協定。若要設定 sqlcmd,透過建立別名使用特定的網路通訊協定,請參閱<如何:建立伺服器別名供用戶端使用 (SQL Server 組態管理員)>。
- 如果沒有使用其他方法指定通訊協定,sqlcmd 將使用「SQL Server 組態管理員」之通訊協定順序所判斷的網路通訊協定。如需詳細資訊,請參閱<如何:設定用戶端使用特定的網路通訊協定 (SQL Server 組態管理員)>。
下列範例顯示各種不同的方法,用以連接到通訊埠 1433 的預設 Database Engine 執行個體,以及假設要接聽通訊埠 1691 的 Database Engine 具名執行個體;其中一部份範例使用回送網路卡的 IP 位址 (127.0.0.1)。請使用您電腦網路介面卡的 IP 位址進行測試。
指定執行個體名稱,以連接到 Database Engine:
sqlcmd -S ComputerA
sqlcmd -S ComputerA\instanceB
指定 IP 位址,以連接到 Database Engine:
sqlcmd -S 127.0.0.1
sqlcmd -S 127.0.0.1\instanceB
指定 TCP\IP 通訊埠編號,以連接到 Database Engine:
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>
若要使用 VIA 連接
使用下列一般語法的其中之一連接:
sqlcmd -S via:<computer name>,<port number>,<NIC number>
連接到預設執行個體:
sqlcmd -S via:ComputerA,1433,0
連接到命名執行個體:
sqlcmd -S via:ComputerA,1691,0
附註: |
---|
若未提供完整連接資訊,SQL Server Browser (如果此服器在執行中) 將會提供預設通訊埠與 NIC 的連接資訊。 |
附註: |
---|
此主題僅討論 sqlcmd 公用程式的連接選項,sqlcmd 公用程式另有許多其他可用的參數。如需詳細資訊,請參閱<sqlcmd 公用程式>。 |
請參閱
參考
使用共用記憶體通訊協定建立有效的連接字串
使用 TCP/IP 建立有效的連接字串
使用具名管道建立有效的連接字串
使用 VIA 通訊協定建立有效的連接字串