Limitations for Stretch Database
Applies to: SQL Server 2016 (13.x) and later - Windows only
Stretch Database is deprecated in SQL Server 2022 (16.x) and Azure SQL Database. This feature will be removed in a future version of the Database Engine. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.
Learn about limitations for Stretch-enabled tables, and about limitations that currently prevent you from enabling Stretch for a table.
Limitations for Stretch-enabled tables
Stretch-enabled tables have the following limitations.
- Uniqueness isn't enforced for UNIQUE constraints and PRIMARY KEY constraints in the Azure table that contains the migrated data.
You can't UPDATE or DELETE rows that have been migrated, or rows that are eligible for migration, in a Stretch-enabled table or in a view that includes Stretch-enabled tables.
You can't INSERT rows into a Stretch-enabled table on a linked server.
You can't create an index for a view that includes Stretch-enabled tables.
Filters on SQL Server indexes aren't propagated to the remote table.
Limitations that currently prevent you from enabling Stretch for a table
The following items currently prevent you from enabling Stretch for a table.
Tables that have more than 1,023 columns or more than 998 indexes
FileTables or tables that contain FILESTREAM data
Tables that are replicated, or that are actively using Change Tracking or Change Data Capture
- text, ntext and image
- CLR data types including geometry, geography, hierarchyid, and CLR user-defined types
Default constraints and check constraints
Foreign key constraints that reference the table. In a parent-child relationship (for example, Order and Order_Detail), you can enable Stretch for the child table (Order_Detail) but not for the parent table (Order).
Full text indexes
Indexed views that reference the table