TMSL-Referenz (Tabular Model Scripting Language)
Gilt für: SQL Server 2016 und höher analysis Services Azure Analysis Services Fabric/Power BI Premium
Tabular Model Scripting Language (TMSL) ist die Befehls- und Objektmodelldefinitionssyntax für tabellarische Datenmodelle mit Kompatibilitätsgrad 1200 oder höher. TMSL kommuniziert mit Analysis Services über das XMLA-Protokoll, wobei die XMLA.Execute
Methode sowohl JSON-basierte Anweisungsskripts in TMSL als auch die herkömmlichen XML-basierten Skripts in Analysis Services Scripting Language (ASSL for XMLA) akzeptiert.
Wichtige Elemente von TMSL:
Tabellarische Metadaten, die auf der Semantik des tabellarischen Modells basieren.
Ein tabellarisches Modell besteht aus Tabellen, Spalten und Beziehungen. Äquivalente Objektdefinitionen in TMSL sind jetzt, nicht überraschend, Tabellen, Spalten, Beziehungen usw. Eine neue Metadaten-Engine unterstützt diese Definitionen.
Objektdefinitionen werden als JSON anstelle von XML strukturiert.
Mit Ausnahme der Formatierung der Nutzlast (in JSON oder XML) sind TMSL und ASSL funktionell gleichwertig, wenn sie Befehle und Metadaten zu XMLA-Methoden bereitstellen, die für die Serverkommunikation und Datenübertragung verwendet werden.
Verwenden von TMSL
Die einfachste Möglichkeit zum Erkunden der TMSL-Skripterstellung ist die Verwendung der Befehle CREATE, ALTER, DELETE oder Process in SQL Server Management Studio (SSMS) für ein Modell, das Sie bereits kennen.
Suchen Sie den Befehl, den Sie verwenden möchten: TMSL-Referenz – Befehle
Überprüfen Sie den Objektdefinitionsverweis auf Objekte, die im Befehl verwendet werden: TMSL-Referenz – Objekte
Wählen Sie eine Methode zum Ausführen des TMSL-Skripts aus:
XMLA-Fenster in SSMS
Invoke-ASCmd PowerShell-Cmdlet
Modelldefinitionsschema
Der folgende Screenshot zeigt eine abgekürzte Version des Schemas, die reduziert ist, um die Hauptobjekte anzuzeigen.
Skriptsprachen in Analysis Services
Analysis Services unterstützt ASSL- und TMSL-Skriptsprachen. Nur tabellarische Modelle, die mit dem Kompatibilitätsgrad 1200 oder höher erstellt wurden, werden in TMS im JSON-Format beschrieben.
Analysis Services Scripting Language (ASSL for XMLA) war die erste Skriptsprache und ist weiterhin die einzige Skriptsprache für mehrdimensionale Modelle und tabellarische Modelle mit niedrigeren Kompatibilitätsgraden (1100 oder 1103). In ASSL werden tabellarische Modelle mit 110x in mehrdimensionalen Begriffen wie cube (für ein Modell) und measuregroup (für eine Tabelle) beschrieben.
Hinweis
In [SQL Server Data Tools (SSDT) können Sie ein tabellarisches Modell einer früheren Version aktualisieren, um TMSL zu verwenden, indem Sie den CompatibilityLevel auf 1200 oder höher ändern. Denken Sie daran, dass das Upgrade nicht rückgängig gemacht werden kann. Sichern Sie vor dem Upgrade Ihr Modell, falls Sie die originale Version später benötigen.
Die folgende Tabelle enthält die Skriptsprachenmatrix für Analysis Services-Datenmodelle auf verschiedenen Plattformen/Versionen mit bestimmten Kompatibilitätsgraden.
Version | Mehrdimensional | Tabellarisch 110x | Tabellarisch 1200 | Tabellarisch 1400 | Tabellarisch 1500 | Tabellarisch 1600 |
---|---|---|---|---|---|---|
Power BI Premium | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar | TMSL | TMSL |
Azure Analysis Services | Nicht verfügbar | Nicht verfügbar | TMSL | TMSL | TMSL | TMSL |
SQL Server 2022 Analysis Services | ASSL | ASSL | TMSL | TMSL | TMSL | TMSL |
SQL Server 2019 Analysis Services | ASSL | ASSL | TMSL | TMSL | TMSL | Nicht verfügbar |
SQL Server 2017 Analysis Services | ASSL | ASSL | TMSL | TMSL | Nicht verfügbar | Nicht verfügbar |
SQL Server 2016 Analysis Services | ASSL | ASSL | TMSL | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar |
SQL Server 2014 Analysis Services | ASSL | ASSL | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar |
SQL Server 2012 Analysis Services | ASSL | ASSL | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar | Nicht verfügbar |