模型物件 (TMSL)
適用於: SQL Server 2016 和更新版本的 Analysis Services Azure Analysis Services Fabric/Power BI Premium
定義表格式模型。 每個資料庫都有一個模型,而且在任何指定的命令中只能指定一個資料庫。 Database 對像是父物件。
模型定義太大,無法重現一個主題中的整個語法。 因此,您可以在下方找到醒目提示主要部分的部分語法,其中包含子對象的連結。
也許瞭解模型定義的最佳方式,就是從您非常瞭解的表格式模型開始。 使用 SQL Server Data Tools 中的 [檢視程式代碼] 選項來檢視其定義。 請記得安裝 JSON 編輯器,以便檢視程式代碼。 您可以在 Visual Studio 中取得 JSON 編輯器,方法是 下載 Community 版本 或其他 Visual Studio 版本。
注意
在任何腳本中,一次只能參考一個資料庫。 針對資料庫本身以外的任何物件,如果您指定模型,Database 屬性是選擇性的。 模型與資料庫之間有一對一對應,如果未明確提供資料庫名稱,就可以用來推斷資料庫名稱。
同樣地,您可以省略 Model,在資料庫上設定其屬性。
物件定義
所有物件都有一組通用的屬性,包括名稱、類型、描述、屬性集合和批注。 模型 物件也有下列屬性。
storageLocation
要放置模型之磁碟上的位置。
defaultMode
在分割區中提供數據的預設方法。
defaultDataView
對於 DirectQuery 模式中的模型,這個屬性會決定哪些分割區可用來對模型執行查詢。 有效值包括 Full 和 Sample。
文化
要用於格式化的文化特性。
整理
定序序列。
表
模型中數據表的完整集合,包括數據分割、數據行、量值、KPI 和批注。 如需詳細資訊,請參閱 Tables 物件 (TMSL)。
關係
指定每對數據表之間的關聯性,包括設定篩選方向和安全性的屬性。 如需詳細資訊,請參閱 Relationships 物件 (TMSL)。
dataSources
一或多個外部資料庫的連線,提供數據給模型,或用於傳遞查詢。 如需詳細資訊,請參閱 DataSources 物件 (TMSL)。
角色
關聯資料庫許可權、成員帳戶,以及 DAX 中用於自定義存取控制的安全性篩選的物件。
用法
模型 物件包含整個模型。 您必須在大部分命令中指定一個 Model 和/或其父 Database 物件。
建立、取代或改變模型物件時,請指定物件定義的所有讀寫屬性。 讀取寫入屬性的遺漏會被視為刪除。
部分語法
因為這個物件定義太大,所以只會列出第一層屬性。 如需子物件清單,請參閱表格式模型腳本語言 (TMSL) 中的
"model": {
"description": "Model object of a tabular database",
"type": "object",
"properties": {
"name": { },
"description": { },
"storageLocation": { },
"defaultMode": { },
"defaultDataView": { },
"culture": { },
"collation": { },
"annotations": { },
"tables": { },
"relationships": { },
"dataSources": { },
"perspectives": { },
"cultures": { },
"roles": { }
}