-->

Azure SQL Database shares a common code base with SQL Server. The features of SQL Server supported by Azure SQL Database depend on the type of Azure SQL database that you create. With Azure SQL Database, you can create a database as part of a managed instance, as a single database, or as part of an elastic pool.

Microsoft continues to add features to Azure SQL Database. Visit the Service Updates webpage for Azure for the newest updates using these filters:

  • Filtered to the SQL Database service.
  • Filtered to General Availability (GA) announcements for SQL Database features.

SQL Server feature support in Azure SQL Database

The following table lists the major features of SQL Server and provides information about whether the feature is partially or fully supported and a link to more information about the feature.

SQL FeatureSupported by single databases and elastic poolsSupported by managed instances
Active geo-replicationYes - all service tiers other than hyperscaleNo, see Auto-failover groups(preview) as an alternative
Auto-failover groupsYes - all service tiers other than hyperscaleYes, in public preview
Always EncryptedYes - see Cert store and Key vaultYes - see Cert store and Key vault
Always On Availability GroupsHigh availability is included with every database. Disaster recovery is discussed in Overview of business continuity with Azure SQL DatabaseHigh availability is included with every database and cannot be managed by user. Disaster recovery is discussed in Overview of business continuity with Azure SQL Database
Attach a databaseNoNo
Application rolesYesYes
AuditingYesYes, with some differences
Automatic backupsYes. Full backups are taken every 7 days, differential 12 hours, and log backups every 5-10 min.Yes. Full backups are taken every 7 days, differential 12 hours, and log backups every 5-10 min.
Automatic tuning (plan forcing)YesYes
Automatic tuning (indexes)YesNo
Azure Data StudioYesYes
BACPAC file (export)Yes - see SQL Database exportYes - see SQL Database export
BACPAC file (import)Yes - see SQL Database importYes - see SQL Database import
BACKUP commandNo, only system-initiated automatic backups - see Automated backupsYes, user initiated copy-only backups to Azure Blob Storage (automatic system backups cannot be initiated by user) - see Backup differences
Built-in functionsMost - see individual functionsYes - see Stored procedures, functions, triggers differences
BULK INSERT statementYes, but just from Azure Blob storage as a source.Yes, but just from Azure Blob Storage as a source - see differences.
Certificates and asymmetric keysYes, without access to file system for BACKUP and CREATE operations.Yes, without access to file system for BACKUP and CREATE operations - see certificate differences.
Change data captureNoYes
Change trackingYesYes
Collation - databaseYesYes
Collation - server/instanceNo, default logical server collation SQL_Latin1_General_CP1_CI_AS is always used.Yes, can be set when the instance is created and cannot be updated later.
Columnstore indexesYes - Premium tier, Standard tier - S3 and above, General Purpose tier, and Business Critical tiersYes
Common language runtime (CLR)NoYes, but without access to file system in CREATE ASSEMBLY statement - see CLR differences
Contained databasesYesCurrently no due to defect in RESTORE including point-in-time RESTORE. This is a defect that will be fixed soon.
Contained usersYesYes
Control of flow language keywordsYesYes
CredentialsYes, but only database scoped credentials.Yes, but only Azure Key Vault and SHARED ACCESS SIGNATURE are supported see details
Cross-database queriesNo - see Elastic queriesYes, plus Elastic queries
Cross-database transactionsNoYes, within the instance. See Linked server differences for cross-instance queries.
CursorsYesYes
Data compressionYesYes
Database mailNoYes
Data Migration Service (DMS)YesYes
Database mirroringNoNo
Database configuration settingsYesYes
Data Quality Services (DQS)NoNo
Database snapshotsNoNo
Data typesYesYes
DBCC statementsMost - see individual statementsYes - see DBCC differences
DDL statementsMost - see individual statementsYes - see T-SQL differences
DDL triggersDatabase onlyYes
Distributed partition viewsNoYes
Distributed transactions - MS DTCNo - see Elastic transactionsNo - see Linked server differences
DML statementsYesYes
DML triggersMost - see individual statementsYes
DMVsMost - see individual DMVsYes - see T-SQL differences
Dynamic data maskingYesYes
Elastic poolsYesBuilt-in - a single Managed Instance can have multiple databases that share the same pool of resources
Event notificationsNo - see AlertsNo
ExpressionsYesYes
Extended eventsSome - see Extended events in SQL DatabaseYes - see Extended events differences
Extended stored proceduresNoNo
Files and file groupsPrimary file group onlyYes. File paths are automatically assigned and the file location cannot be specified in ALTER DATABASE ADD FILEstatement.
FilestreamNoNo
Full-text searchYes, but third-party word breakers are not supportedYes, but third-party word breakers are not supported
FunctionsMost - see individual functionsYes - see Stored procedures, functions, triggers differences
Geo-restoreYes - all service tiers other than hyperscaleYes - using Azure PowerShell.
Graph processingYesYes
In-memory optimizationYes - Premium and Business Critical tiers onlyYes - Business Critical tier only
JSON data supportYesYes
Language elementsMost - see individual elementsYes - see T-SQL differences
Linked serversNo - see Elastic queryOnly to SQL Server and SQL Database
Log shippingHigh availability is included with every database. Disaster recovery is discussed in Overview of business continuity with Azure SQL DatabaseNatively built-in as a part of DMS migration process. High availability is included with every database and it is not recommended to use Log-shipping as HA alternative. Disaster recovery is discussed in Overview of business continuity with Azure SQL Database
Logins and usersYes, but CREATE and ALTER login statements do not offer all the options (no Windows and server-level Azure Active Directory logins). EXECUTE AS LOGIN is not supported - use EXECUTE AS USER instead.Yes, with some differences. Windows logins are not supported and they should be replaced with Azure Active Directory logins.
Long-term backup retention - LTRYes, keep automatically taken backups up to 10 years.Not yet. Use COPY_ONLYmanual backups as a temporary workaround.
Master Data Services (MDS)NoNo
Minimal logging in bulk importNoNo
Modifying system dataNoYes
OLE AutomationNoNo
Online index operationsYesYes
OPENDATASOURCENoYes, only to other Azure SQL Databases and SQL Servers. See T-SQL differences
OPENJSONYesYes
OPENQUERYNoYes, only to other Azure SQL Databases and SQL Servers. See T-SQL differences
OPENROWSETYes, only to import from Azure Blob storage.Yes, only to other Azure SQL Databases and SQL Servers, and to import from Azure Blob storage. See T-SQL differences
OPENXMLYesYes
OperatorsMost - see individual operatorsYes - see T-SQL differences
PartitioningYesYes
Public IP addressYes. The access can be restricted using firewall or service endpoints.Yes. Needs to be explicitly enabled and port 3342 must be enabled in NSG rules. Public IP can be disabled if needed. See Public endpoint for more details.
Point in time database restoreYes - all service tiers other than hyperscale - see SQL Database recoveryYes - see SQL Database recovery
PolybaseNoNo
Policy-based managementNoNo
PredicatesYesYes
Query NotificationsNoYes
Query Performance InsightsYesNo
R ServicesYes, in public previewNo
Resource governorNoYes
RESTORE statementsNoYes, with mandatory FROM URL options for the backups files placed on Azure Blob Storage. See Restore differences
Restore database from backupFrom automated backups only - see SQL Database recoveryFrom automated backups - see SQL Database recovery and from full backups placed on Azure Blob Storage - see Backup differences
Row Level SecurityYesYes
Semantic searchNoNo
Sequence numbersYesYes
Service BrokerNoYes, but only within the instance. See Service Broker differences
Server configuration settingsNoYes - see T-SQL differences
Set statementsMost - see individual statementsYes - see T-SQL differences
SMOYesYes version 150
SpatialYesYes
SQL AnalyticsYesYes
SQL Data SyncYesNo
SQL Server AgentNo - see Elastic jobsYes - see SQL Server Agent differences
SQL Server Analysis Services (SSAS)No, Azure Analysis Services is a separate Azure cloud service.No, Azure Analysis Services is a separate Azure cloud service.
SQL Server AuditingNo - see SQL Database auditingYes - see Auditing differences
SQL Server Data Tools (SSDT)YesYes
SQL Server Integration Services (SSIS)Yes, with a managed SSIS in Azure Data Factory (ADF) environment, where packages are stored in SSISDB hosted by Azure SQL Database and executed on Azure SSIS Integration Runtime (IR), see Create Azure-SSIS IR in ADF.
To compare the SSIS features in SQL Database server and Managed Instance, see Compare Azure SQL Database single databases/elastic pools and Managed Instance.
Yes, with a managed SSIS in Azure Data Factory (ADF) environment, where packages are stored in SSISDB hosted by Managed Instance and executed on Azure SSIS Integration Runtime (IR), see Create Azure-SSIS IR in ADF.
To compare the SSIS features in SQL Database and Managed Instance, see Compare Azure SQL Database single databases/elastic pools and Managed Instance.
SQL Server Management Studio (SSMS)YesYes version 18.0 and higher
SQL Server PowerShellYesYes
SQL Server ProfilerNo - see Extended eventsYes
SQL Server ReplicationTransactional and snapshot replication subscriber onlyYes, in public preview
SQL Server Reporting Services (SSRS)No - see Power BINo - see Power BI
Stored proceduresYesYes
System stored functionsMost - see individual functionsYes - see Stored procedures, functions, triggers differences
System stored proceduresSome - see individual stored proceduresYes - see Stored procedures, functions, triggers differences
System tablesSome - see individual tablesYes - see T-SQL differences
System catalog viewsSome - see individual viewsYes - see T-SQL differences
Temporary tablesLocal and database-scoped global temporary tablesLocal and instance-scoped global temporary tables
Temporal tablesYesYes
Time zone choiceNoYes(preview)
Threat detectionYesYes
Trace flagsNoNo
VariablesYesYes
Transparent data encryption (TDE)Yes - General Purpose and Business Critical service tiers onlyYes
VNetPartial - see VNet EndpointsYes, Resource Manager model only
Windows Server Failover ClusteringHigh availability is included with every database. Disaster recovery is discussed in Overview of business continuity with Azure SQL DatabaseHigh availability is included with every database. Disaster recovery is discussed in Overview of business continuity with Azure SQL Database
XML indexesYesYes

Next steps

  • For information about the Azure SQL Database service, see What is SQL Database?
  • For information about a Managed Instance, see What is a Managed Instance?.