List of unsupported Azure options for ApexSQL Diff

Applies to:
ApexSQL Diff

Note that below are listed limitations of Azure V11, which is fully supported by ApexSQL Diff. In Azure V12 some of those limitations are resolved, but ApexSQL Diff currently offers basic Azure V12 support, while work is underway to implement full Azure V12 support.

Functions:

  • WITH ENCRYPTION option is not supported;
  • CLR scalar and table-valued functions are not supported;

Indexes:

  • ON keyword is not supported (for partition_schema_name, filegroup name, default);
  • FILESTREAM_ON option is not supported;
  • Relational index options that are not supported:
    • PAD_INDEX
    • FILLFACTOR
    • SORT_IN_TEMPDB
    • ALLOW_ROW_LOCKS
    • ALLOW_PAGE_LOCKS
    • MAXDOP
    • DATA_COMRESSION
  • Backward compatible relational indexes are not supported;
  • COLUMNSTORE indexes are not supported;

Stored Procedures:

  • FOR REPLICATION option is not supported;
  • EXTERNAL NAME (CLR-procedure) option is not supported;
  • WITH ENCRYPTION option is not supported;

Synonyms:

  • Synonyms cannot be created for objects on different server; i.e. Azure supports the three-part name format [database_name].[schema_name].[object_name] when the database_name is the current database or the database_name is tempdb and the object_name starts with #. It means that Azure does not support synonyms, that reference objects using four-part names in form: [server_name].[database_name].[schema_name].[object_name];

Tables:

  • Azure does not support the following options for tables:
    • ON keyword { partition_schema_name | filegroup | “default” }
    • TEXTIMAGE_ON
    • FILESTREAM_ON
    • <column_definition>
      • FILESTREAM
      • NOT FOR REPLICATION
      • ROWGUIDCOL
    • <data type>
      • CONTENT
      • DOCUMENT
      • xml_schema_collection
    • <column_constraint>, <computed_column_definition>, <table_constraint>
      • FILLFACTOR
      • ON
      • NOT FOR REPLICATION
    • <index_option>
      • PAD_INDEX
      • FILLFACTOR
      • ALLOW_ROW_LOCKS
      • ALLOW_PAGE_LOCKS
      • DATA_COMPRESSION
  • ON PARTITIONS
  • Azure does not support FileTables;

Triggers:

  • Azure does not support the following options for triggers:
    • ENCRYPTION
    • WITH APPEND
    • NOT FOR REPLICATION
    • EXTERNAL NAME option (there is no external method support)
    • ALL SERVER Option (DDL Trigger)
    • Trigger on a LOGON event (Logon Trigger)
  • Azure does not support CLR-triggers

Types:

  • Azure does not support CLR-types (having option EXTERNAL NAME assembly_name [ .class_name ]);
  • Azure does not support ROWGUIDCOL types;
  • Azure types does not support CONTENT, DOCUMENT and xml_schema_collection options;

Users:

  • Users do not support Certificates and Asymmetric Keys (and as the result users cannot be created based on these credentials);
  • Azure does not support users based on Windows Logins;
  • Users do not support specification of DEFAULT_LANGUAGE;
  • User can be created only for some specific login, while logins can be created only in master database. So user creation logic is as follows: create a login in master database (if not exist yet) and then create user in custom database for this login;

Views:

  • WITH ENCRYPTION is not supported;