SQL Tran Docs
  • Overview
    • About
    • Getting started
    • Object lifecycle
    • Why is there no AI inside?
    • Performance considerations
    • Security considerations
    • Assessment
    • Unlocking projects
    • Interface walk-through
    • Translation scenarios
    • Prerequisites for Azure Marketplace deployment
  • Emulation scenarios
    • Emulation in SQL Tran
    • SQL Server to Fabric Warehouse
      • Data types
      • Case sensitivity
      • Cursors
        • Basic cursor loop
        • Cursor types
        • Fetch direction modes
        • Cursors in control flow
        • Nested cursors
        • Data modification cursors
        • Multiple cursors
        • Subqueries and filtering
      • Named procedure parameters
      • Result set limiting
      • MERGE statements
      • Computed columns
      • Temporary tables
      • External tables
      • Identity columns
      • Default values
      • Sequences
      • Unsupported system features
    • Synapse Analytics to Fabric Warehouse
      • Data types
      • Case sensitivity
      • Named procedure parameters
      • Result set limiting
      • MERGE statements
      • Temporary tables
      • External tables
      • Identity columns
      • Default values
      • Materialized views
      • Create table as select (CTAS)
      • Unsupported system features
    • SQL Server to Synapse Analytics
    • Oracle to PostgreSQL
  • Project wizard
    • Source database
    • Target database
    • Wrapping up
  • Projects
    • Project list
    • Overview
    • Workspace
    • Reports
    • Tests
    • Scratch pad
    • Settings
      • Project name
      • Mapping
      • Database connections
    • Navigation
    • Object complexity
    • Static analysis
    • Translation errors
    • Exporting and importing projects
  • Workspace
    • Object tree
    • Data lineage
    • Code
    • Actions
      • Overriding source
      • Overriding target
      • Ignoring objects
  • Tests
    • Workflow
    • Configure SQL Tran
    • Connecting to databases
      • Fabric Warehouse
      • Synapse Dedicated SQL Pool
      • Azure SQL Database, Azure SQL Managed Instance, Microsoft SQL Server
    • Tables
    • Views
    • Procedures
    • Functions
    • Triggers
    • Performance tests
  • Scripter
    • About
    • Supported databases
    • SQL Server
    • Azure SQL
    • Synapse Dedicated Pool
    • Oracle
    • PostgreSQL
    • MySQL
  • Microsoft training - SQL Tran
    • Introduction
    • Licensing plans
    • Deploying and activating
    • Creating a new project
    • Exploring the Overview screen
    • Inside the Workspace screen
    • Code translation and emulations
      • Data type emulation
      • Case sensitivity emulation
      • Named parameters emulation
      • Result set limiting emulation
      • Merge statements emulation
      • Identity column emulation
      • Default values emulation
      • Detection of unsupported features
Powered by GitBook
On this page
  • Code example
  • Training video example
  1. Microsoft training - SQL Tran
  2. Code translation and emulations

Detection of unsupported features

PreviousDefault values emulation

Last updated 6 hours ago

While Synapse Analytics supports a broad range of system-level operations, including user management, diagnostics, and configuration through system procedures and catalog views, Microsoft Fabric Warehouse only supports a limited subset of these features. System objects such as sp_addrolemember, sys.dm_* views, and T-SQL commands like DBCC or ALTER DATABASE are not available in Fabric’s SQL environment.

SQL Tran intelligently detects unsupported features during translation. Instead of attempting to rewrite or remove these constructs, it flags them with diagnostic comments. Important statements are preserved in the translated code, marked clearly for manual review.

This approach ensures that critical administrative or diagnostic logic is not silently lost and highlights areas that require human attention, saving time and reducing the risk of overlooked incompatibilities.

(For more information, see the following emulation reference page: )


Code example

Synapse Analytics:

CREATE PROCEDURE [dbo].[GetPromotedPeople]
AS
BEGIN
    SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

	SELECT BusinessEntityID, FirstName, LastName, EmailPromotion
	FROM Person.Person
	WHERE EmailPromotion > 0
	ORDER BY EmailPromotion DESC;
END;

Fabric Warehouse (generated by SQL Tran):

-- SQLTRAN FABRIC LIMITATION: -- SET TRANSACTION ISOLATION LEVEL
CREATE PROCEDURE [dbo].[GetPromotedPeople]
AS
BEGIN
    SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

	SELECT BusinessEntityID, FirstName, LastName, EmailPromotion
	FROM Person.Person
	WHERE EmailPromotion > 0
	ORDER BY EmailPromotion DESC;
END;

Training video example

In the example shown, a procedure contains a SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED statement — a feature that is not supported in Fabric.

SQL Tran detects this unsupported construct and preserves the statement in the target SQL while emitting a diagnostic comment to flag the limitation.

This ensures that intentional constructs are not discarded during translation and can be reviewed and adjusted manually where necessary.

Unsupported system features
Unsupported features detection in translated SQL