Stretch Database 的限制
適用於:SQL Server 2016 (13.x) 和更新版本 - 僅限 Windows
重要
Stretch Database 在 SQL Server 2022 (16.x) 及 Azure SQL 資料庫中已被取代。 資料庫引擎的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。
了解已啟用 Stretch 之資料表的限制,以及目前讓您無法為資料表啟用 Stretch 的限制。
已啟用 Stretch 之資料表的限制
已啟用 Stretch 的資料表具有下列限制。
條件約束
- 在包含移轉過來資料的 Azure 資料表中,不會對 UNIQUE 條件約束和 PRIMARY KEY 條件約束強制執行唯一性。
DML 作業
在已啟用 Stretch 的資料表中或包含已啟用 Stretch 之資料表的檢視中,您無法 UPDATE (更新) 或DELETE (刪除) 已移轉的資料列,或可進行移轉的資料列。
您無法將資料列 INSERT (插入) 至連結伺服器上已啟用 Stretch 的資料表中。
索引
您無法為含有已啟用 Stretch 之資料表的檢視建立索引。
對 SQL Server 索引進行的篩選,不會傳播至遠端資料表。
目前讓您無法為資料表啟用 Stretch 的限制
下列項目目前讓您無法為資料表啟用 Stretch。
資料表屬性
具有超過 1,023 個資料行或超過 998 個索引的資料表
FileTable 或包含 FILESTREAM 資料的資料表
所複寫或主動使用變更追蹤或變更資料擷取的資料表
記憶體最佳化的資料表
資料類型
- text、ntext 和 image
- timestamp
- sql_variant
- xml
- CLR 資料類型,包括 geometry、geography、hierarchyid 和 CLR 使用者定義型別
資料行類型
COLUMN_SET
計算資料行
條件約束
預設條件約束和檢查條件約束
參考資料表的外部索引鍵條件約束。 在父子式關聯性 (例如,Order 和 Order_Detail) 中,您可以啟用子資料表 (Order_Detail) 而非父資料表 (Order) 的 Stretch。
索引
全文檢索索引
XML 索引
空間索引
參考資料表的索引檢視表