Invoke-ASCmd
可讓資料庫管理員針對 Analysis Services 實例執行 XMLA 腳本、TMSL 腳本、數據分析表示式 (DAX) 查詢、多維度表達式 (MDX) 查詢或數據採礦延伸模組 (DMX) 語句。
語法
QuerySet (預設值)
Invoke-ASCmd
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ParameterSetName
Invoke-ASCmd
[-Database <String>]
[-Query <String>]
[-ConnectionString <String>]
[-QueryTimeout <Int32>]
[-ConnectionTimeout <Int32>]
[-TraceFile <String>]
[-Variables <String[]>]
[-TraceTimeout <Int32>]
[-TraceLevel <TraceLevelOption>]
[-TraceFileFormat <TraceFileFormatOption>]
[-TraceFileDelimiter <String>]
[-Server <String>]
[-Credential <PSCredential>]
[-ServicePrincipal]
[-ApplicationId <String>]
[-TenantId <String>]
[-CertificateThumbprint <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-ASCmd
[-Database <String>]
[-ConnectionString <String>]
[-InputFile <String>]
[-QueryTimeout <Int32>]
[-ConnectionTimeout <Int32>]
[-TraceFile <String>]
[-Variables <String[]>]
[-TraceTimeout <Int32>]
[-TraceLevel <TraceLevelOption>]
[-TraceFileFormat <TraceFileFormatOption>]
[-TraceFileDelimiter <String>]
[-Server <String>]
[-Credential <PSCredential>]
[-ServicePrincipal]
[-ApplicationId <String>]
[-TenantId <String>]
[-CertificateThumbprint <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ParameterSetTabularName
Invoke-ASCmd
[-Server <String>]
[-Credential <PSCredential>]
[-ServicePrincipal]
[-ApplicationId <String>]
[-TenantId <String>]
[-CertificateThumbprint <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-ASCmd
[-Server <String>]
[-Credential <PSCredential>]
[-ServicePrincipal]
[-ApplicationId <String>]
[-TenantId <String>]
[-CertificateThumbprint <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
可讓資料庫管理員針對 Analysis Services 實例執行 XMLA 腳本、TMSL 腳本、數據分析表示式 (DAX) 查詢、多維度表達式 (MDX) 查詢或數據採礦延伸模組 (DMX) 語句。
Cmdlet 會在輸入檔案內執行這些查詢或腳本。
傳遞的腳本是 XMLA 命令,而且支援下列命令:Alter、Backup、Batch、BeginTransaction、Cancel、ClearCache、CommitTransaction、Create、Delete、DesignAggregations、Drop、Insert、Lock、MergePartitions、NotifyTableChange、Process、Restore、RollbackTransaction、Statement(用來執行 MDX 查詢和 DMX 語句)、Subscribe、Synchronize、Unlock、Update、UpdateCells。
此腳本也會接受 JSON 命令,其設計目的是針對相容性模式為 1200 或更高版本的表格式資料庫執行。
Module requirements: version 21+ on PowerShell 5.1; version 21 (recent preview) or version 22+ on PowerShell 7.x.
範例
叫用探索
Invoke-ASCmd -Server:localhost -Query "<Discover xmlns='urn:schemas-microsoft-com:xml-analysis'><RequestType>DBSCHEMA_CATALOGS</RequestType><Restrictions /><Properties /></Discover>"
叫用探索 2
Invoke-ASCmd -Database "Adventure Works DW 2008R2" -Query "<Discover xmlns='urn:schemas-microsoft-com:xml-analysis'><RequestType>DISCOVER_DATASOURCES</RequestType><Restrictions></Restrictions><Properties></Properties></Discover>"
叫用選取
Invoke-ASCmd -Database "Adventure Works DW 2008R2" -Query "SELECT {[Measures].[Internet Sales Amount]} ON COLUMNS, BOTTOMCOUNT(NONEMPTY(DESCENDANTS( [Customer].[Customer Geography].[All Customers], [Customer].[Customer Geography].[Customer]), ( [Measures].[Internet Sales Amount] ) ), 10, ( [Measures].[Internet Sales Amount] )) ON ROWS FROM [Adventure Works] WHERE ( [Date].[Calendar].[Calendar Year].&[2008] )"
叫用選取 2
Invoke-ASCmd -Database "Adventure Works DW 2008R2" -Query "SELECT MODEL_CATALOG, MODEL_NAME, ATTRIBUTE_NAME, NODE_NAME FROM [Forecasting].CONTENT"
使用 xmla 檔案叫用
Invoke-ASCmd -InputFile C:\MyFolder\DiscoverConnections.xmla
<# DiscoverConnections.xmla is as follows:
<Discover xmlns="urn:schemas-microsoft-com:xml-analysis">
<RequestType>DISCOVER_CONNECTIONS</RequestType>
<Restrictions />
<Properties>
<PropertyList>
<Content>Data</Content>
</PropertyList>
</Properties>
</Discover>
#>
參數
-ApplicationId
服務主體的應用程式識別碼。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-CertificateThumbprint
服務主體的憑證指紋。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Confirm
在執行 Cmdlet 之前,提示您進行確認。
參數屬性
| 類型: | SwitchParameter
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | cf |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-ConnectionString
指定連接字串。
請注意,指定這個屬性時,會忽略其他連接層級屬性,例如Server、Database 等,因此這些屬性必須包含在連接字串中。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-ConnectionTimeout
指定連接 Analysis Services 實例逾時之前的秒數。逾時值必須是介於 0 到 65534 之間的整數。
如果指定了 0,連線嘗試就不會逾時。
參數屬性
| 類型: | Int32
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Credential
如果指定此參數,傳遞的使用者名稱和密碼將用來連線到指定的 Analysis Server 實例。
如果未指定任何認證,則會使用執行此工具之用戶的預設 Windows 帳戶。
參數屬性
| 類型: | PSCredential
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Database
指定要執行 MDX 查詢或 DMX 語句的資料庫。
當 Cmdlet 執行 XMLA 腳本時,會忽略資料庫參數,因為資料庫名稱內嵌在 XMLA 腳本中。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
識別包含 XMLA 腳本、MDX 查詢、DMX 語句或TMSL文本的檔案(JSON)。 使用 Invoke-AsCmd 時,您必須指定 InputFile 或 *Query *參數的值。
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Query
直接在命令行上指定實際的腳本、查詢或語句,而不是在檔案中。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-QueryTimeout
指定查詢逾時之前的秒數。如果未指定逾時值,查詢就不會逾時。逾時必須是介於 1 到 65535 之間的整數。
參數屬性
| 類型: | Int32
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Server
選擇性地指定要連接到的伺服器實例,如果目前不在 SQLAS 提供者目錄中。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-ServicePrincipal
指定此連線使用服務主體。
參數屬性
| 類型: | SwitchParameter
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TenantId
服務主體的租用戶標識碼。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetTabularInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TraceFile
識別在執行 XMLA 腳本、MDX 查詢或 DMX 語句時接收 Analysis Services 追蹤事件的檔案。
如果檔案已經存在,系統會自動覆寫它(除了使用 -TraceLevel:Duration 和 -TraceLevel:DurationResult 參數設定所建立的追蹤檔案除外)。
包含空格的檔名必須以引號 (“” ) 括住。
如果檔名無效,就會產生錯誤訊息。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TraceFileDelimiter
當您將 csv 指定為使用 -TraceFileFormat 參數之追蹤檔案的格式時,將單一字元指定為追蹤檔案分隔符。
預設值為 |(管道或垂直線)。
參數屬性
| 類型: | String
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
指定 -TraceFile 參數的檔案格式(如果指定此參數則為 )。
預設值為 「Csv」。。
| 類型: | TraceFileFormatOption
|
| 預設值: | None |
| 接受的值: | Csv, Text |
| 支援萬用字元: | False |
| 不要顯示: | False |
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TraceLevel
指定追蹤檔案中收集及記錄的數據。
可能的值為 High、Medium、Low、Duration、DurationResult。
參數屬性
| 類型: | TraceLevelOption
|
| 預設值: | None |
| 接受的值: | High, Medium, Low, Duration, DurationResult |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TraceTimeout
指定 Analysis Services 引擎在結束追蹤之前等候的秒數(如果您指定 -TraceFile 參數)。
如果指定的期間內未記錄任何追蹤訊息,則會將追蹤視為已完成。
默認追蹤逾時值為5秒。
參數屬性
| 類型: | Int32
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Variables
指定其他腳本變數。 每個變數都是名稱/值組。 如果值包含內嵌空格或控制字元,則必須以雙引號括住。 使用 PowerShell 陣列來指定多個變數及其值。
參數屬性
| 類型: | String[]
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ParameterSetName
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
ParameterSetInputObject
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-WhatIf
顯示 Cmdlet 執行時會發生什麼事。 指令未執行。
參數屬性
| 類型: | SwitchParameter
|
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | 無線 |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
PSObject
輸出
string