共用方式為


使用 sqlcmd 連線到 SQL Server

適用於:Microsoft Fabric 中的 SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) SQL Database

本文說明如何使用 sqlcmd 公用程式連線到 SQL Server 資料庫引擎

概觀

SQL Server 支援使用 TCP/IP 網路通訊協定 (預設值) 和具名管道通訊協定,來進行用戶端通訊。 如果用戶端是連接到相同電腦上的資料庫引擎執行個體,也可以使用共用記憶體通訊協定。 選取通訊協定有三種常見的方法。 sqlcmd 公用程式所使用的通訊協定是以下列順序決定:

  • sqlcmd 使用指定為連接字串一部分的通訊協定,如本文稍後所述。

  • 如果連接字串中未指定任何通訊協定,則 sqlcmd 會使用定義為連線別名一部分的通訊協定。 若要設定 sqlcmd 透過建立別名來使用特定的網路通訊協定,請參閱建立或刪除用戶端使用的伺服器別名 (SQL Server 組態管理員)

  • 如果未使用其他方法指定通訊協定,則 sqlcmd 會使用 SQL Server 組態管理員通訊協定順序所判定的網路通訊協定。

下列範例顯示各種不同的方法,用以連接到通訊埠 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>