Sdílet prostřednictvím


Datové typy ve skladu dat Fabric

Platí pro:✅ Koncový bod analýzy SQL a datový sklad v Microsoft Fabric

Tabulky v Microsoft Fabric podporují nejčastěji používané datové typy T-SQL.

Datové typy ve skladu dat Fabric

Warehouse podporuje podmnožinu datových typů T-SQL. Každý nabízený datový typ je založený na datovém typu SQL Serveru se stejným názvem. Další informace najdete v referenčním článku pro každý z následujících tabulek.

Kategorie Podporované datové typy
Přesné číselné hodnoty
Přibližné číselné hodnoty
Datum a čas
Řetězce znaků s pevnou délkou
Řetězce znaků s proměnnou délkou
  • varchar – limit úložiště v varchar(max) je aktuálně 16 MB v datovém skladu Fabric.
Binární data

* Přesnost pro datum a čas2 a čas je omezena na 6 číslic přesnosti u zlomků sekund.

** Datový typ uniqueidentifier je datový typ T-SQL bez odpovídajícího datového typu v Delta Parquet. V důsledku toho se uloží jako binární typ. Warehouse podporuje ukládání a čtení sloupců uniqueidentifier , ale tyto hodnoty nelze číst v koncovém bodu analýzy SQL. Čtení hodnot uniqueidentifier v lakehouse zobrazuje binární reprezentaci původních hodnot. V důsledku toho funkce, jako jsou křížová spojení mezi skladem a koncovým bodem analýzy SQL pomocí sloupce uniqueidentifier , nefungují podle očekávání.

Další informace o podporovaných datových typech, včetně jejich přesností, najdete v referenčních informacích k datovým typům CREATE TABLE.

Nepodporované datové typy

U datových typů T-SQL, které nejsou aktuálně podporované, jsou k dispozici některé alternativy. Ujistěte se, že vyhodnotíte použití těchto typů, protože přesnost a chování dotazů se liší.

Nepodporovaný datový typ Dostupné alternativy
peníze a malé peníze Použijte desetinné číslo, ale všimněte si, že peněžní jednotku nelze uložit.
datetime a smalldatetime Použijte datum a čas2.
datetimeoffset Použijte datetime2, ale můžete použít datetimeoffset k převodu dat pomocí funkce CASTAT TIME ZONE (Transact-SQL). Příklad najdete v části datetimeoffset.
nchar a nvarchar Použijte char a varchar, protože v Parquet neexistuje žádný podobný Unicode datový typ. Typy char a varchar v kolaci UTF-8 mohou k ukládání dat unicode použít více úložiště než nchar a nvarchar . Pokud chcete porozumět dopadu na vaše prostředí, podívejte se na rozdíly mezi úložištěm UTF-8 a UTF-16.
text a ntext Použijte varchar.
obrázek Použijte varbinary.
tinyint Používejte smallint.
zeměpis Uložte zeměpisná data jako dvojici sloupců (zeměpisná šířka, zeměpisná délka) nebo varbinární sloupec s dobře známým binárním obsahem a přetypujte je na zeměpisnou hodnotu. Jako alternativu použijte varchar typ a uložte data jako známý text.
geometrie Uložte data geometrie jako dvojici sloupců (zeměpisná šířka, zeměpisná délka) nebo jako sloupec typu varbinary s dobře známým binárním obsahem a převeďte je na hodnotu geometrie. Jako alternativu použijte typ varchar a uložte data jako text ve formátu Well-Known-Text.
json Použijte varchar.
xml Žádný ekvivalent.
uživatelem definovaný typ (CLR) Žádný ekvivalent.

Je možné stále používat nepodporované datové typy v kódu T-SQL pro proměnné, parametry nebo výstupy funkcí a uložených procedur, nebo jakékoli použití přímo v paměti v rámci relace. Vytváření tabulek nebo zobrazení, které ukládají data na disk s některým z těchto typů, není povoleno.

Průvodce vytvořením tabulky ve skladu najdete v tématu Vytvoření tabulek.

Automaticky generované datové typy v koncovém bodu analýzy SQL

Tabulky v koncovém bodu analýzy SQL se automaticky vytvoří při každém vytvoření tabulky v přidruženém jezeře. Typy sloupců v tabulkách koncových bodů analýzy SQL jsou odvozeny ze zdrojových typů Delta.

Typy, které nejsou uvedené v tabulce, nejsou reprezentovány jako sloupce tabulky v koncovém bodu analýzy SQL.

Pravidla pro mapování původních typů Delta na typy SQL v koncovém bodu analýzy SQL jsou uvedená v následující tabulce:

Datový typ Delta Datový typ SQL (mapovaný)
LONG, BIGINT bigint
BOOLEAN, BOOL bit
INT, INTEGER Int
TINYINT, BYTE, SMALLINT, SHORT smallint
DVOJITÝ plout
FLOAT, REAL reálný
DATE (Datum) datum
ČASOVÉ RAZÍTKO datetime2
ZNAK(n) varchar(n) s Latin1_General_100_BIN2_UTF8 kolací
VARCHAR(n) kde n < 2000 varchar(4*n) s Latin1_General_100_BIN2_UTF8 kolací
STRING, VARCHAR(n), kde n >= 2000 varchar(8000) v koncovém bodu analýzy SQL pro Lakehouse a varchar(max)* v koncovém bodu analýzy SQL pro zrcadlené položky.
Sloupec varchar obsahuje Latin1_General_100_BIN2_UTF8 kolaci.
BINÁRNÍ varbinary(n)
DECIMAL, DEC, NUMERIC decimal(p;s)

* Limit úložiště v varchar(max) je aktuálně 16 MB v koncovém bodu analýzy SQL a Fabric Data Warehouse.