A company wants to migrate their on-premises SQL Server database to Azure with minimal changes to their existing application code. Which service offers the highest compatibility?
SQL Managed Instance provides near-100% SQL Server compatibility including SQL Agent, CLR, and cross-database queries for lift-and-shift migrations.
Why this answer
Azure SQL Managed Instance is correct because it provides near 100% compatibility with on-premises SQL Server, including support for SQL Server Agent, cross-database queries, and CLR integration, enabling a lift-and-shift migration with minimal application code changes. In contrast, Azure SQL Database is a Platform-as-a-Service offering that lacks many SQL Server features like instance-scoped objects, making it less compatible for existing applications.
Exam trap
The trap here is that candidates often confuse Azure SQL Database (a single database PaaS) with Azure SQL Managed Instance (a full instance PaaS), assuming both offer the same compatibility, but Azure SQL Database lacks instance-scoped features critical for many on-premises applications.
How to eliminate wrong answers
Option A is wrong because Azure SQL Database is a single database PaaS offering that does not support instance-level features such as SQL Server Agent, cross-database queries, or linked servers, requiring significant application code changes. Option C is wrong because Azure Database for PostgreSQL is a different database engine (PostgreSQL) that is not compatible with SQL Server T-SQL syntax, stored procedures, or client libraries, necessitating a full re-architecture. Option D is wrong because Azure Cosmos DB is a NoSQL database with a different data model (document, key-value, graph) and query language (SQL API is not T-SQL), requiring complete application rewrites.