表格模型脚本语言 (TMSL) 参考

适用对象: SQL Server 2016 及更高版本 Analysis Services Azure Analysis Services Power BI Premium

表格模型脚本语言 (TMSL) 是兼容级别 1200 或更高的表格数据模型的命令和对象模型定义语法。 TMSL 通过 XMLA 协议与 Analysis Services 通信,其中 方法接受 TMSL 中基于 JSON 的语句脚本,以及用于 XMLA Analysis Services 脚本语言 (ASSL 的传统基于 XML 的 XMLA.Execute 脚本) 。

TMSL 的关键元素:

  • 基于表格模型语义的表格元数据。

    表格模型由表、列和关系组成。 TMSL 中的等效对象定义现在是表、列、关系等,这一点并不意外。 新的元数据引擎支持这些定义。

  • 对象定义的结构为 JSON 而不是 XML。

    除了在 JSON 或 XML) 中格式化有效负载 (,TMSL 和 ASSL 在功能上等效于它们如何为用于服务器通信和数据传输的 XMLA 方法提供命令和元数据。

如何使用 TMSL

浏览 TMSL 脚本的最简单方法是在已了解的模型上SQL Server Management Studio (SSMS) CREATE、ALTER、DELETE 或 Process 命令。

  1. 找到想要使用的命令 :TMSL 参考 - 命令

  2. 检查命令中使用的对象的对象定义引用 :TMSL 参考 - 对象

  3. 选择用于执行 TMSL 脚本的方法:

模型定义架构

以下屏幕截图显示了架构的缩写版本,已折叠以显示主要对象。

SSAS_TabularMetadata

脚本语言Analysis Services

Analysis Services ASSL 和 TMSL 脚本语言。 TMS 中仅以 JSON 格式描述了在 1200 兼容级别或更高兼容级别创建的表格模型。

Analysis Services脚本语言 (ASSL for XMLA) 是第一种脚本语言,并且仍是兼容级别较低的多维模型和表格模型的唯一脚本语言 (1100 或 1103) 。 在 ASSL 中,110x 的表格模型以多维术语描述,例如,模型 (的多维数据集) 和表 (的度量值) 。

备注

在 [SQL Server Data Tools (SSDT) 中,可以通过将早期版本的 表格 模型切换为 1200 或更高版本来使用 TMSL。 请记住,升级不可逆。 在升级之前,请备份模型,以防以后需要原始版本。

下表是脚本语言矩阵,用于Analysis Services不同版本、特定兼容级别的数据模型。

版本 多维 表格 110x 表格 1200 表格 1400 表格 1500
Azure Analysis Services NA NA TMSL TMSL TMSL
SQL Server 2019 Analysis Services ASSL ASSL TMSL TMSL TMSL
SQL Server 2017 Analysis Services ASSL ASSL TMSL TMSL NA
SQL Server 2016 Analysis Services ASSL ASSL TMSL NA NA
SQL Server 2014 Analysis Services ASSL ASSL NA NA NA
SQL Server 2012 Analysis Services ASSL ASSL NA NA NA