PowerShell 中的 SQL Server 識別碼

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

適用於 Windows PowerShell 的 SQL Server 提供者會使用 Windows PowerShell 路徑中的 SQL Server 識別碼。 SQL Server 識別碼可能包含 Windows PowerShell 路徑中不支援的字元。 當您使用 Windows PowerShell 路徑中的識別碼時,必須逸出這些字元或針對這些字元使用特殊編碼。

注意

有兩個 SQL Server PowerShell 模組:SqlServerSQLPS

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

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

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

PowerShell 資源庫安裝 SqlServer 模組。

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

Windows PowerShell 路徑中的 SQL Server 識別碼

Windows PowerShell 提供者會使用與 Windows 檔案系統類似的路徑結構來公開資料階層。 SQL Server 提供者會實作 SQL Server 物件的路徑。 如果是資料庫引擎,磁碟機會設定為 SQLSERVER:、第一個資料夾會設定為 \SQL,而且資料庫物件會當做容器和項目來參考。 這是預設資料庫引擎執行個體中 AdventureWorks2022 資料庫之 Purchasing 結構描述的 Vendor 資料表路徑:

SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2022\Tables\Purchasing.Vendor  

SQL Server 識別碼是 SQL Server 物件的名稱,例如資料表或資料行名稱。 SQL Server 識別碼有兩種:

  • 一般識別碼限制為 Windows PowerShell 路徑中也支援的一組字元。 這些名稱可以在 Windows PowerShell 路徑中使用,而不需變更。

  • 分隔識別碼可以使用 Windows PowerShell 路徑名稱中不支援的字元。 分隔識別碼如果放在括號內 ([IdentifierName]),則稱為括號識別碼,而如果是放在雙引號內 ("IdentifierName"),則稱為引號識別碼。 如果分隔識別碼使用 Windows PowerShell 路徑中不支援的字元,這些字元必須先編碼或逸出,然後才可以使用該識別碼當做容器或項目名稱。 編碼適用於所有字元。 某些字元 (例如冒號字元 (:)) 無法逸出。

Cmdlet 中的 SQL Server 識別碼

某些 SQL Server Cmdlet 有一個參數會將識別碼當做輸入。 參數值通常會以加上引號的字串常數形式提供,或是在字串變數中提供。 當以字串常數的形式或是在變數中提供識別碼時,不會與 Windows PowerShell 支援的字元集合發生衝突。

SQL Server 識別碼工作

工作描述 發行項
描述如何指定執行個體名稱,包括執行個體在其上執行的電腦名稱。 指定 SQL Server PowerShell 提供者中的執行個體
描述如何指定用於 Windows PowerShell 路徑中不支援之分隔識別碼的十六進位編碼。 同時描述如何解碼十六進位字元。 編碼及解碼 SQL Server 識別碼
描述如何使用 PowerShell 路徑中不支援字元的 Windows PowerShell 逸出字元。 逸出 SQL Server 識別碼

另請參閱