指定 SQL Server PowerShell 提供者中的執行個體

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)

針對 SQL Server PowerShell 提供者所指定路徑必須識別資料庫引擎的執行個體及其執行所在電腦。 用來指定電腦和執行個體的語法必須符合 SQL Server 識別碼和 Windows PowerShell 路徑的規則。

注意

有兩個 SQL Server PowerShell 模組:SqlServerSQLPS

SqlServer 模組是要使用的最新 PowerShell 模組。

SQLPS 模組隨附於 SQL Server 安裝 (用於回溯相容性),但不再更新。

SqlServer 模組包含 SQLPS 中 Cmdlet 的更新版本,且加入新的 Cmdlet 以支援 SQL 最新功能。

PowerShell 資源庫安裝 SqlServer 模組。

如需詳細資訊,請參閱 SQL Server PowerShell

開始之前

SQL Server 提供者路徑中,接在 SQLSERVER:\SQL 後面的第一個節點是正在執行資料庫引擎執行個體的電腦名稱。例如:

SQLSERVER:\SQL\MyComputer  

若您在與資料庫引擎執行個體相同的電腦上執行 Windows PowerShell,就可以使用 localhost 或 (local),而不是電腦的名稱。 使用 localhost 或 (local) 的指令碼可以在任何電腦上執行,而不需要變更成反映不同的電腦名稱。

您可以在相同電腦上執行資料庫引擎可執行程式的多個執行個體。 SQL Server 提供者路徑中接在電腦名稱後面的節點可識別執行個體。例如:

SQLSERVER:\SQL\MyComputer\MyInstance  

每部電腦都只能有一個預設的資料庫引擎執行個體。 當您安裝預設執行個體時,未指定它的名稱。 如果您在連接字串中只有指定電腦名稱,您會連接到該電腦上的預設執行個體。 此電腦上的所有其他執行個體都必須是具名執行個體。 您可在安裝期間指定執行個體名稱,而且連接字串必須指定電腦名稱和執行個體名稱。

限制事項

您無法使用句號 (.),在 PowerShell 指令碼中指定本機電腦。 因為句號會被 PowerShell 解譯成命令,所以不支援句號。

(local) 中的括號字元通常會被 Windows PowerShell 視為命令。 您必須將其編碼或逸出以在路徑中使用,或使用雙引號括住路徑。 如需詳細資訊,請參閱<編碼及解碼 SQL Server 識別碼>。

SQL Server 提供者會要求您一律要指定執行個體名稱。 如果是預設執行個體,您必須指定執行個體名稱 DEFAULT。

範例:電腦和執行個體名稱

此範例使用 localhost 和 DEFAULT 指定本機電腦上的預設執行個體:

Set-Location SQLSERVER:\SQL\localhost\DEFAULT   

(local) 中的括號字元通常會被 Windows PowerShell 視為命令。 因此,您必須:

  • 使用引號括住路徑字串:

    Set-Location "SQLSERVER:\SQL\(local)\DEFAULT"  
    
  • 使用反勾號字元 (`) 來逸出括號:

    Set-Location SQLSERVER:\SQL\`(local`)\DEFAULT  
    
  • 使用十六進位表示法來編碼括號:

    Set-Location SQLSERVER:\SQL\%28local%29\DEFAULT  
    

另請參閱

PowerShell 中的 SQL Server 識別碼
SQL Server PowerShell 提供者
SQL Server PowerShell