Unsupported system features
Emulation context
In Synapse Analytics, 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.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, as these constructs have no equivalent in Fabric's SQL surface.
SQL Tran preserves the original structure to allow downstream review and manual rewriting.
Code example
Synapse Analytics:
Fabric Warehouse (generated by SQL Tran):
Important notes
System procedures are not supported: Synapse 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 are not available in Fabric, others like
sys.objects
are accessible. SQL Tran only flags unsupported views.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.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