Convert-UrnToPath
SQL Server管理オブジェクト URN をWindows PowerShell プロバイダー パスに変換します。
構文
Convert-UrnToPath
-Urn <String>
[<CommonParameters>]
説明
Convert-UrnToPath コマンドレットは、SQL Server管理オブジェクトの Uniform Resource Name (URN) をSQL Server プロバイダー パスに変換します。 SQL Server 管理オブジェクトには、SQL Server オブジェクト階層でのその場所を示す文字列を返す Urn プロパティがあります。 Urn 内のノードが、Windows PowerShell パス ノードでサポートされていない拡張文字を持つ区切り識別子SQL Server場合、拡張文字は 16 進数表現でエンコードされます。 たとえば、テーブル名 "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 に渡すために使用されます。
パラメーター
-Urn
SQL Server階層内のオブジェクトの場所を識別するSQL Server URN を指定します。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
入力
String
SQL Server管理オブジェクト URN を表す文字列を指定します。
出力
String
SQL Server PowerShell プロバイダー パスを表す文字列を指定します。