共用方式為


Microsoft Fabric 中的數據類型

適用於: Microsoft Fabric 中的 SQL 分析端點和倉儲

Microsoft Fabric 中的數據表支援最常用的 T-SQL 數據類型。

  • 如需建立數據表的詳細資訊,請參閱 數據表

倉儲中的數據類型

倉儲支援 T-SQL 數據類型的子集。 每個提供的數據類型都是以相同名稱的 SQL Server 數據類型為基礎。 如需詳細資訊,請參閱下表中每個的參考文章。

類別 支援的資料類型
精確數值
近似數值
日期和時間
固定長度字元字串
可變長度字元字串
二進位字串

* datetime2time 的有效位數限製為 6 位數的有效位數,以秒數為單位。

** uniqueidentifier 數據類型是 T-SQL 數據類型,在 Delta Parquet 中沒有相符的數據類型。 因此,它會儲存為二進位類型。 Warehouse 支援儲存和讀取 uniqueidentifier 數據行,但這些值無法在 SQL 分析端點上讀取。 在 Lakehouse 中讀取 uniqueidentifier 值會顯示原始值的二進位表示法。 因此,使用 uniqueidentifier 數據行在倉儲與 SQL 分析端點之間的交叉聯結等功能無法如預期般運作。

如需支持數據類型的詳細資訊,包括其精確度,請參閱 CREATE TABLE 參考中的數據類型。

不支援的資料類型

針對目前不支援的 T-SQL 數據類型,有一些替代方案可供使用。 請務必評估這些類型的用法,因為精確度和查詢行為會有所不同:

不支援的數據類型 可用的替代方案
moneysmallmoney 不過,請使用 十進位,但請注意,它無法儲存貨幣單位。
datetimesmalldatetime 使用 datetime2
ncharnvarchar 分別使用 charvarchar ,因為 Parquet 中沒有類似的 Unicode 數據類型。 UTF-8 定序中的 char 和 varchar 類型可能會使用比 ncharnvarchar 更多的記憶體來儲存 unicode 數據。 若要瞭解對您的環境的影響,請參閱 UTF-8 與 UTF-16 之間的記憶體差異。
text 和 ntext 使用 varchar
image 使用 varbinary

不支援的數據類型仍可用於 T-SQL 程式代碼中的變數,或會話中的任何記憶體內部使用。 不允許在磁碟上建立數據表或檢視表,以保存任何這些類型的數據。

如需在倉儲中建立數據表的指南,請參閱 建立數據表

SQL 分析端點中的自動產生的數據類型

每當在相關聯的 Lakehouse 中建立數據表時,就會自動建立 SQL 分析端點中的數據表。 SQL 分析端點數據表中的數據行類型衍生自來源 Delta 類型。

下表顯示將原始差異類型對應至 SQL 分析端點中 SQL 類型的規則:

Delta 數據類型 SQL 資料類型 (對應)
LONGBIGINT bigint
BOOLEANBOOL bit
INTINTEGER int
TINYINTBYTESMALLINTSHORT smallint
DOUBLE float
FLOATREAL real
DATE date
TIMESTAMP datetime2/*
CHAR(n) varchar(n) 含 Latin1_General_100_BIN2_UTF8 定序
STRINGVARCHAR(n) varchar(n) 含 Latin1_General_100_BIN2_UTF8 定序
STRING,VARCHAR(MAX) varchar(8000) 含 Latin1_General_100_BIN2_UTF8 定序
二元的 varbinary(n)
DECIMALDECNUMERIC decimal(p,s)

數據表中未列出的類型數據行不會表示為 SQL 分析端點中的數據表數據行。