Get-SqlDatabase
取得存在於目標實例中之每個資料庫的 SQL Database 物件 SQL Server。
Syntax
Get-SqlDatabase
[[-Name] <String>]
[[-Path] <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Get-SqlDatabase
[[-Name] <String>]
[-ServerInstance] <String[]>
[-Credential <PSCredential>]
[-ConnectionTimeout <Int32>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Get-SqlDatabase
[[-Name] <String>]
-ConnectionString <String>
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Get-SqlDatabase
[[-Name] <String>]
[-InputObject] <Server>
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Get-SqlDatabase Cmdlet 會取得存在於目標實例中 SQL Server 之每個資料庫的 SQL 資料庫物件。 如果提供資料庫名稱,則此 Cmdlet 僅會傳回該特定資料庫物件。
此 Cmdlet 支援下列作業模式來取得 SQL 資料庫物件:
- 指定實例 Windows PowerShell 路徑。
- 指定伺服器物件。
- 指定目標實例的 ServerInstance 物件 SQL Server。
範例
範例 1:取得 SQL 資料庫物件
PS C:\> CD SQLSERVER:\SQL\Computer\Instance
PS SQLSERVER:\SQL\Computer\Instance> Get-SqlDatabase -Name "DbName" -Credential $SqlCredential
第一個命令會將工作目錄變更為 SQLSERVER:\SQL\Computer\Instance。
範例 2:取得計算機上所有 SQL Server 實例
PS C:\> Get-SqlInstance -Credential $Credential -MachineName "Computer001" | Get-SqlDatabase -Credential $SqlCredential
此命令會取得名為 『Computer001』 之電腦上 SQL Server 的所有實例,並傳回實例中存在的所有資料庫。
參數
-AccessToken
用來驗證 SQL Server 的存取令牌,作為使用者/密碼或 Windows 驗證的替代方案。
例如,這可用來連線至 SQL Azure DB
或使用 或使用 SQL Azure Managed Instance
Service Principal
或 Managed Identity
。
要使用的參數可以是表示令牌的字串,或是 PSAccessToken
執行 Get-AzAccessToken -ResourceUrl https://database.windows.net
所傳回的物件。
這個參數是模組 v22 中的新功能。
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
在執行 Cmdlet 之前,提示您確認。在執行 Cmdlet 之前,提示您確認。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionString
指定要連線到伺服器的 連接字串。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionTimeout
指定在逾時失敗前等候 SQL Server 連線的秒數。 逾時值必須是介於 0 到 65534 之間的整數值。 如果指定了 0,連線嘗試就不會逾時。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
在目標電腦上指定具有 Windows 管理員認證的使用者帳戶。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encrypt
連接到 SQL Server 時要使用的加密類型。
這個值會對應至 Encrypt
Microsoft.Data.SqlClient 驅動程式之 SqlConnection 物件上的 屬性 SqlConnectionEncryptOption
。
在模組的 v22 中,預設為 Optional
(,以便與 v21) 相容。 在模組 v23+ 中,預設值會是「強制」,這可能會為現有的腳本建立重大變更。
這個參數是模組 v22 中的新功能。
Type: | String |
Accepted values: | Mandatory, Optional, Strict |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostNameInCertificate
用於驗證 SQL Server TLS/SSL 憑證的主機名稱。 如果您的 SQL Server 實例已啟用強制加密,而且您想要使用主機名/shortname 連線到實例,則必須傳遞此參數。 如果省略此參數,則必須將完整域名 (FQDN) 傳遞至 -ServerInstance,才能連線到啟用強制加密的 SQL Server 實例。
這個參數是模組 v22 中的新功能。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
指定目標實例的伺服器物件。
Type: | Server |
Position: | 2 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
指定這個 Cmdlet 取得 SQL Database 對象的資料庫名稱。
Type: | String |
Aliases: | Database |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定執行此 Cmdlet 之 SQL Server 實體的路徑。 如果您未指定此參數的值,Cmdlet 會使用目前的工作位置。
Type: | String |
Position: | 2 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Script
指出此 Cmdlet 會產生執行工作的 Transact-SQL 腳本。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ServerInstance
指定 SQL Server 實例的名稱做為字串陣列,成為作業的目標。
Type: | String[] |
Position: | 2 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-TrustServerCertificate
指出通道是否會在略過憑證鏈結以驗證信任時加密。
在模組的 v22 中,預設為 $true
(,以便與 v21) 相容。 在模組 v23+ 中,預設值會是 『$false』,這可能會為現有的腳本建立重大變更。
這個參數是模組 v22 中的新功能。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 Cmdlet 未執行。顯示 Cmdlet 執行時會發生什麼情況。 Cmdlet 並不會執行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
System.String[]
Microsoft.SqlServer.Management.Smo.Server