Del via


Datatyper i Microsoft Fabric

Gælder for:✅ SQL Analytics-slutpunkt og warehouse i Microsoft Fabric

Tabeller i Microsoft Fabric understøtter de mest anvendte T-SQL-datatyper.

Datatyper i warehouse

Warehouse understøtter et undersæt af T-SQL-datatyper. Hver tilbudte datatype er baseret på SQL Server-datatypen med det samme navn. Du kan få flere oplysninger i referenceartikel for hver af dem i følgende tabel.

Kategori Understøttede datatyper
Nøjagtige numeriske værdier
Omtrentlige numeriske værdier
Dato og klokkeslæt
Tegnstrenge med fast længde
Tegnstrenge med variabel længde
Binære strenge

* Præcisionen for datetime2 og klokkeslæt er begrænset til 6 cifre præcision på brøkdele af sekunder.

** Datatypen uniqueidentifier er en T-SQL-datatype uden en matchende datatype i Delta Parquet. Derfor gemmes den som en binær type. Warehouse understøtter lagring og læsning af entydigeidentifikatorkolonner , men disse værdier kan ikke læses på SQL Analytics-slutpunktet. Hvis du læser entydigeidentifikatorværdier i lakehouse, vises der en binær repræsentation af de oprindelige værdier. Derfor fungerer funktioner som f.eks. krydsjoinforbindelser mellem Warehouse- og SQL Analytics-slutpunktet ved hjælp af en entydigidentifikatorkolonne ikke som forventet.

Understøttelse af varchar (maks.) og binære (maks.) er i øjeblikket en prøveversion af Warehouse. Strengkolonnerne fra de underliggende Delta Lake-filer i One Lake repræsenteres som varchar(8000) i stedet for varchar(max) i SQL Analytics-slutpunktet.

Du kan få flere oplysninger om de understøttede datatyper, herunder deres præcision, under datatyper i CREATE TABLE-reference.

Ikke-understøttede datatyper

For T-SQL-datatyper, der ikke understøttes i øjeblikket, er nogle alternativer tilgængelige. Sørg for at evaluere brugen af disse typer, da præcision og funktionsmåde for forespørgsler varierer:

Datatype, der ikke understøttes Tilgængelige alternativer
penge og smallmoney Brug decimal, men bemærk, at den monetære enhed ikke kan gemmes.
datetime og smalldatetime Brug datetime2.
datetimeoffset Brug datetime2, men du kan bruge datetimeoffset til at konvertere data medfunktionen AT TIME ZONE (Transact-SQL). Du kan se et eksempel under datetimeoffset.
nchar og nvarchar Brug henholdsvis tegn og varchar , da der ikke er en lignende Unicode-datatype i Parquet. Tegn- og varchar-typerne i en UTF-8-sortering kan bruge mere lagerplads end nchar og nvarchar til at gemme Unicode-data. Hvis du vil vide mere om indvirkningen på dit miljø, skal du se Lagerforskelle mellem UTF-8 og UTF-16.
tekst og ntext Brug varchar.
billede Brug varbinary.
tinyint Brug smallint.
geografi Gem geografidata som et kolonnepar (breddegrad, længdegrad) eller en binær kolonne med det velkendte binære indhold, og angiv dem til en geografiværdi. Alternativt kan du bruge varchar- type og gemme data som kendt tekst.
geometri Gem geometridata som et kolonnepar (breddegrad, længdegrad) eller en binær kolonne med det velkendte binære indhold, og cast den til en geometriværdi Som et alternativ kan du bruge varchar--type og gemme data som kendt tekst.
json Brug varchar.
xml- Ingen tilsvarende.
brugerdefineret type (CLR) Ingen tilsvarende.

Ikke-understøttede datatyper kan stadig bruges i T-SQL-kode til variabler eller brug i hukommelsen i sessionen. Oprettelse af tabeller eller visninger, der fastholder data på disken med en af disse typer, er ikke tilladt.

Du kan se en vejledning til, hvordan du opretter en tabel i Warehouse, under Opret tabeller.

Automatisk genererede datatyper i SQL-analyseslutpunktet

Tabellerne i SQL Analytics-slutpunktet oprettes automatisk, når der oprettes en tabel i det tilknyttede lakehouse. Kolonnetyperne i SQL Analytics-slutpunktstabellerne er afledt af kildens Delta-typer.

Reglerne for tilknytning af oprindelige Delta-typer til SQL-typerne i SQL Analytics-slutpunktet vises i følgende tabel:

Delta-datatype SQL-datatype (tilknyttet)
LANG, BIGINT bigint
BOOLESK, BOOL bit
INT, HELTAL Int
TINYINT, BYTE, SMALLINT, SHORT smallint
DOBBELT flyde
FLOAT, REAL reel
DATO dato
TIDSSTEMPEL datetime2
CHAR(n) varchar(n) med Latin1_General_100_BIN2_UTF8 sortering
STRING, VARCHAR(n) varchar(n) med Latin1_General_100_BIN2_UTF8 sortering
STRING, VARCHAR-(8000) varchar(8000) med Latin1_General_100_BIN2_UTF8 sortering
BINÆR varbinary(n)
DECIMAL, DEC, NUMERISK decimal(p,s)

De kolonner, der har de typer, der ikke er angivet i tabellen, repræsenteres ikke som tabelkolonnerne i SQL Analytics-slutpunktet.