Convert-UrnToPath

將 SQL Server 管理物件 URN 轉換為 Windows PowerShell 提供者路徑。

語法

Convert-UrnToPath
       [-Urn] <String>
       [-ProgressAction <ActionPreference>]
       [<CommonParameters>]

Description

Convert-UrnToPath Cmdlet 會將 SQL Server 管理物件統一資源名稱 (URN) 轉換為 SQL Server 提供者路徑。

SQL Server 管理物件具有 Urn 屬性,會傳回字串,指出其在 SQL Server 物件階層中的位置。

如果 Urn 中的節點是 SQL Server 分隔標識碼,且具有 Windows PowerShell 路徑節點不支援的擴充字元,則會使用其十六進位表示法來編碼擴充字元。

例如,數據表名稱 「Main:Table」 編碼為 「Main%3ATable」。

範例

範例 1:取得包含目前路徑的字串

PS C:\> Set-Location "SQLSERVER:\SQL\MyComputer\MyInstance\Databases\AdventureWorks2014"
PS SQLSERVER:\SQL\MyComputer\MyInstance\Databases\AdventureWorks2014> Convert-UrnToPath -Urn (Get-Item .).Urn.ToString()

SQLSERVER:\SQL\MyComputer\MyInstance\Databases\AdventureWorks2014

此命令會傳回包含目前路徑的字串。 此範例使用 Urn 屬性的 ToString() 函式,將 Urn 傳回為字串。

範例 2:根據 URN 設定路徑位置

PS C:\> Set-Location (Convert-UrnToPath -Urn "Server[@Name='MyComputer']/Database[@Name='AdventureWorks']/Table[@Name='Address' and @Schema = 'Person']")

此命令會將路徑設定為 SQL Server 管理物件 URN 中指定的位置。

範例 3:取得資料庫路徑

PS C:\> Set-Location "SQLSERVER:\SQL\MyComputer\DEFAULT\Databases"
PS SQLSERVER:\SQL\MyComputer\DEFAULT\Databases> foreach ($Item in Get-ChildItem) { $Item.Urn.ToString() | Convert-UrnToPath }

SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2014

此命令會傳回字串數位,其中包含預設實例中資料庫的路徑。 管線運算子可用來將目前的節點 URN 傳遞至 Convert-UrnToPath。

參數

-ProgressAction

決定 PowerShell 如何回應腳本、Cmdlet 或提供者所產生的進度更新,例如 Write-Progress Cmdlet 所產生的進度列。 Write-Progress Cmdlet 會建立顯示命令狀態的進度列。

類型:ActionPreference
別名:proga
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Urn

指定 SQL Server URN,識別 SQL Server 階層中物件的位置。

類型:String
Position:1
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

輸入

String

指定表示 SQL Server 管理物件 URN 的字串。

輸出

String

指定代表 SQL Server PowerShell 提供者路徑的字串。