Datentypen in Microsoft Fabric

Gilt für:✅ SQL-Analyseendpunkt und Warehouse in Microsoft Fabric

Tabellen in Microsoft Fabric unterstützen die gängigsten T-SQL-Datentypen.

  • Weitere Informationen zur Tabellenerstellung finden Sie unter Tabellen.
  • Informationen zur Syntax finden Sie unter CREATE TABLE.

Datentypen in Warehouse

Warehouse unterstützt eine Teilmenge von T-SQL-Datentypen. Jeder angebotene Datentyp basiert auf dem SQL Server-Datentyp desselben Namens. Weitere Informationen finden Sie im Referenzartikel für jeden in der folgenden Tabelle.

Kategorie Unterstützte Datentypen
Genaue numerische Werte
Ungefähre numerische Werte
Datum und Uhrzeit
Zeichenfolgen mit fester Länge
Zeichenfolgen mit variabler Länge
Binärzeichenfolgen

Die Genauigkeit für datetime2 und time ist für Sekunden auf 6 Nachkommastellen begrenzt.

Der Datentyp uniqueidentifier ist ein T-SQL-Datentyp, zu dem es in Delta Parquet keinen übereinstimmenden Datentyp gibt. Daher wird er als binärer Typ gespeichert. Warehouse unterstützt das Speichern und Lesen von uniqueidentifier-Spalten, aber diese Werte können nicht vom SQL-Analyseendpunkt gelesen werden. Beim Lesen von uniqueidentifier-Werten im Lakehouse wird eine binäre Darstellung der Originalwerte angezeigt. Infolgedessen funktionieren Features wie Kreuzjoins zwischen Warehouse und dem SQL-Analyseendpunkt, die eine uniqueidentifier-Spalte verwenden, nicht wie erwartet.

*** Die Unterstützung für varchar (max) und varbinary (max) befindet sich derzeit in der Vorschauphase.

Weitere Informationen zu den unterstützten Datentypen, einschließlich ihrer Genauigkeit, finden Sie unter Datentypen in der CREATE TABLE-Referenz.

Nicht unterstützte Datentypen

Für T-SQL-Datentypen, die derzeit nicht unterstützt werden, stehen einige Alternativen zur Verfügung. Überprüfen Sie die Verwendung dieser Typen, da Genauigkeit und Abfrageverhalten variieren:

Nicht unterstützter Datentyp Verfügbare Alternativen
money und smallmoney Verwenden Sie decimal, aber beachten Sie, dass die Währungseinheit nicht gespeichert werden kann.
datetime- und smalldatetime-Daten Verwenden Sie datetime2.
datetimeoffset Verwenden Sie datetime2, aber Sie können datetimeoffset zum Konvertieren von Daten mit CAST der AT TIME ZONE (Transact-SQL)-Funktion verwenden. Ein Beispiel finden Sie unter datetimeoffset.
nchar und nvarchar Verwenden Sie char bzw. varchar, da es keinen ähnlichen Unicode-Datentyp in Parquet gibt. In einer UTF-8-Sortierung können char- und varchar-Typen zum Speichern von Unicode-Daten mehr Speicherplatz benötigen als nchar und nvarchar. Informationen zu den Auswirkungen auf Ihre Umgebung finden Sie unter Speicherunterschiede zwischen UTF-8 und UTF-16.
text und ntext Verwenden Sie varchar.
Abbildung Verwenden Sie varbinary.
tinyint Verwenden Sie smallint.
geography Keine Entsprechung

Nicht unterstützte Datentypen können in T-SQL-Code weiterhin für Variablen oder für jegliche In-Memory-Verwendung in Sitzungen verwendet werden. Das Erstellen von Tabellen oder Ansichten, die Daten auf Datenträgern persistieren, ist mit keinem dieser Typen zulässig.

Eine Anleitung zum Erstellen einer Tabelle in Warehouse finden Sie unter Erstellen von Tabellen.

Automatisch generierte Datentypen im SQL-Analyseendpunkt

Die Tabellen im SQL-Analyseendpunkt werden automatisch erstellt, wenn eine Tabelle im zugehörigen Lakehouse erstellt wird. Die Spaltentypen in den Tabellen des SQL-Analyseendpunkts werden von den Delta-Quelltypen abgeleitet.

In der folgenden Tabelle sind die Regeln für die Zuordnung der ursprünglichen Delta-Typen zu den SQL-Typen im SQL-Analyseendpunkt aufgeführt:

Delta-Datentyp SQL-Datentyp (zugeordnet)
LONG, BIGINT bigint
BOOLEAN, BOOL bit
INT, INTEGER int
TINYINT, BYTE, SMALLINT, SHORT smallint
DOUBLE float
FLOAT, REAL real
DATE date
TIMESTAMP datetime2
CHAR(n) varchar(n) mit Latin1_General_100_BIN2_UTF8 Sortierung
STRING, VARCHAR(n) varchar(n) mit Latin1_General_100_BIN2_UTF8 Sortierung
STRING, VARCHAR(MAX) varchar(MAX) mit Latin1_General_100_BIN2_UTF8-Sortierung
BINARY varbinary(n)
DECIMAL, DEC, NUMERIC decimal(p,s)

Spalten mit Typen, die nicht in der Tabelle aufgeführt sind, werden im SQL-Analyseendpunkt nicht als Tabellenspalten dargestellt.