Unsupported system features
Emulation context
In Microsoft SQL Server, system objects such as built-in stored procedures, system catalog views, user and login commands, and DBCC utilities are frequently used for diagnostics, metadata inspection, and server-level configuration. These include objects like:
sp_addrolemember
,sp_showspaceused
,sp_set_firewall_rule
sys.sequences
,sys.dm_*
viewsCREATE USER
,ALTER DATABASE
, andDBCC
commands
However, Microsoft Fabric Warehouse supports only a limited subset of system-level operations and configuration objects, excluding many features commonly used for administration and diagnostics. Fabric does not allow direct manipulation of roles, users, database configuration, or extended diagnostics using T-SQL. These system features must be removed or restructured during migration.
Emulation strategy
SQL Tran does not emulate or rewrite system-level constructs. Instead:
For traceability purposes, unsupported system commands and procedures are commented out using:
/* SQLTRAN FIX: ... */
Certain T-SQL features and constructs are flagged using diagnostic comments such as:
-- SQLTRAN FABRIC LIMITATION:
No transformation or replacement logic is generated for these constructs, as there is no equivalent in Fabric's SQL surface.
SQL Tran preserves the original structure to allow downstream review and manual rewriting.
Code example
SQL Server:
Fabric Warehouse (generated by SQL Tran):
Important notes
System procedures are not supported: SQL Server built-in procedures such as
sp_addrolemember
,sp_helpuser
,sp_set_firewall_rule
, andsp_showspaceused
are not available in Fabric and are commented out by SQL Tran.DBCC and administrative commands are removed: DBCC statements like
CHECKDB
,USEROPTIONS
, and platform-level commands such asCREATE USER
orALTER DATABASE
are not supported in Fabric and are commented out.System views are selectively supported: While many system catalog views like
sys.sequences
are not available in Fabric, others likesys.objects
are accessible. SQL Tran only flags unsupported views.XML methods are flagged: Unsupported XML methods such as
.value()
are identified and annotated by SQL Tran using diagnostic comments. These are not supported in Fabric’s SQL engine.Unsupported system clauses and special constructs: SQL Tran flags T-SQL clauses and constructs that are not classified as system objects but are unsupported in Fabric, including:
$PARTITION
,FOR JSON
,FOR XML
,FOR BROWSE
, and recursive common table expressions (CTEs). These are preserved in the translated output but must be manually replaced or removed.Full-text search not supported: Microsoft Fabric does not support SQL Server full-text search features such as
FREETEXTTABLE
,CONTAINSTABLE
,FREETEXT
, orCONTAINS
. These rely on full-text indexes, catalogs, and semantic search infrastructure, none of which exist in Fabric. SQL Tran retains these statements and flags them with a-- SQLTRAN FABRIC LIMITATION: -- FULL-TEXT SEARCH
comment, but does not rewrite or emulate their behavior. Any full-text search logic must be manually removed or reimplemented using Fabric-supported techniques, such asLIKE
,CHARINDEX
, or preprocessed keyword filtering.Identity functions unsupported: Fabric does not support identity-tracking functions such as
@@IDENTITY
,SCOPE_IDENTITY()
, orIDENT_CURRENT()
. These functions depend on identity columns and engine-level metadata that are not available in Fabric’s distributed environment. SQL Tran preserves these statements in the translated output but flags them with a-- SQLTRAN FABRIC LIMITATION:
comment. Any logic that depends on retrieving identity values must be manually reworked using Fabric-compatible alternatives such asNEWID()
,ROW_NUMBER()
, or custom sequencing strategies based on sequences or output parameters.No emulation or fallback is generated: SQL Tran does not attempt to simulate or replace unsupported system objects or features. All such usage must be manually reviewed.
Manual review required: Any logic that depends on system-level behavior, metadata access, or administrative commands must be reviewed and rewritten using Fabric-compatible ingestion tools, platform APIs, or equivalent logic external to the warehouse SQL surface.
Last updated