Pre-synchronization warnings and messages in ApexSQL Diff

Applies to

ApexSQL Diff

Summary

ApexSQL Diff has the Summary and warnings step in its Synchronization wizard that provides messages and warnings to a user, before the synchronization of the destination data sources is started.

Description

To get to the Summary and warnings step, first, the source and destination data sources need to be set, and the Compare button needs to be clicked:

SQL databases selection in the New project window

Quick tip:

If there is a need to filter out objects before the comparison, check out how to narrow schema comparison and synchronization to affected objects only

Once the comparison is finished, check all desired objects for the synchronization process and click the Synchronize button from the Home tab:

Selecting SQL objects and initiating the synchronization process

In the first step of the Synchronization wizard, synchronization direction is shown:

Synchronization direction step in the Synchronization wizard

The second step is the Dependencies step in which dependent objects are included by default, but if there is no need for them, they can be unchecked and therefore excluded from the synchronization process:

Dependencies step in the Synchronization wizard

Quick tip:

Omitting dependent objects from the synchronization script can cause failure in the synchronization process and corresponding warnings will be shown in the last step of the Synchronization wizard before the synchronization process is started

The Output options step of the Synchronization wizard provides various output actions and corresponding output options that can be set, depending on the destination data source type, but in this case, when a SQL database is destination and the Synchronize now action is chosen, the Save a copy of the synchronization script and Backup database before synchronization options are not checked and the Next button is clicked:

Output options step in the Synchronization wizard

Finally, the last step of the Synchronization wizard provides the Summary and warnings step and as shown in the screenshot below, it reported 3 high and 3 medium warnings that could be potential issues during the synchronization process:

Summary and warnings step in the Synchronization wizard

If there are high warnings in the last step of the Synchronization wizard, like in this example, even when the Synchronize button is clicked, the Warning dialog will be shown as a precautionary measure before running the synchronization:

Warning dialog in the Synchronization wizard

Now, let’s look at the list of all potential warnings and messages that could appear in the Summary and warnings step of the Synchronization wizard, along with cases description when these warnings and messages could appear:

Priority

Warning

Message

Case

Low warning icon

Low

Application role {0} will be created with default password

Application role password cannot be retrieved. Default password will be added. You should specify password manually

When password can’t be retrieved, and default is generated

Low warning icon

Low

Cannot alter Identity [{0}] on table {1}. Table will be rebuilt

Source and destination tables differ in identity attributes. Identity columns cannot be altered. Table will be rebuilt to synchronize this difference

When table has differences in identities

Low warning icon

Low

User [{0}] will be created with default password [{1}]

User [{0}] has been created with default password [{1}].

When password can’t be retrieved, and default is generated

Medium warning icon

Medium

{0} {1} cannot be decrypted. Their dependencies won’t be included into the script

Encrypted object {1} cannot be decrypted in SQL Server 2005/2008. Object dependencies won’t be included into the script. Script execution may result in errors

Additional warning for the high warning regarding description below

Medium warning icon

Medium

Cannot alter column [{0}] with associated XML schema collection on table {1}

Column in source table contains associated xml schema collection. The table will be rebuilt to synchronize this difference

Table is recreated instead of altered, if it has differences in XML schema collections for columns

Medium warning icon

Medium

Cannot alter computed column [{0}] on table {1}

Source and destination tables differ in computed columns. Computed columns cannot be altered. The column will be recreated to synchronize this difference

When table has differences in computed columns

Medium warning icon

Medium

Cannot synchronize CLR object or data type {0} to database with version less than 90

Cannot script CLR object or data type to database with version less than 90. SQL object of an appropriate type with empty body will be created

When synchronizing CLR object or data type from SQL database 2005 to SQL database 2000

Medium warning icon

Medium

Column order in table {0} will be changed

Source and destination tables differ in column order and option Ignore Column Order is ON. Table will be rebuilt to make columns order equal

When compared tables have differences in column order

Medium warning icon

Medium

Dropping column [{0}].[{1}] may cause data loss

Script contains Drop column statement. Dropping column(s) may cause data loss

When a table column is dropped

Medium warning icon

Medium

Dropping the schema {0} may cause data loss

Dropping a schema may cause data loss. Please set Include Dependencies ON or select the objects that belong to this schema manually

When schema object is dropped

Medium warning icon

Medium

Enabling Change tracking in table {0} may cause script failure

Synchronization script contains actions which enable Change tracking in table {0}. This change may cause script failure if database change tracking is disabled

When synchronizing Change tracking feature

Medium warning icon

Medium

Fulltext index will be added to the table {0}. Transaction will be split

Fulltext index will be added to the database. Make sure fulltext is enabled on the target database. Please note that fulltext indexes cannot be created within user transaction and synchronization script will be split into several transactions

When synchronizing fulltext indexes

Medium warning icon

Medium

New user {0} will be created in destination database

New user {0} will be created in destination database. Make sure that appropriate login, certificate, asymmetric key, windows user or group exist

When creating new SQL user object

Medium warning icon

Medium

Not all objects are loaded due to Object filter settings

Synchronization script execution may fail because not all objects required for successful creation of dependent objects are loaded due to Object filter settings

When the Object filter feature is used in the New project window

Medium warning icon

Medium

Not FileTable table {0} cannot be converted to FileTable. Table will be rebuilt

Source and destination tables differ in ‘FileTable’ attribute. Table {0} will be rebuilt to synchronize the difference

When there are differences in FileTables

Medium warning icon

Medium

Synchronization of assembly [{0}] may fail

Synchronization of assembly [{0}] may cause script failure in database with version less than 100

When synchronizing assembly to SQL database version earlier than 2008

Medium warning icon

Medium

Synchronization of CLR type [{0}] may fail

Synchronization script contains actions which creates CLR type with class which already has a bound CLR type. These changes may cause script failure

When table has columns with CLR types and when there are differences in CLR name of assembly name

Medium warning icon

Medium

The filegroup of table {0} will be changed

Source and destination tables [{0}] differ in file groups. Table will be rebuilt to synchronize the difference. (You can use Ignore Filegroups/Dataspaces option to ignore this difference)

When table has differences in filegroups

Medium warning icon

Medium

Using Exclude schema/owner option may cause script failure

Using Exclude schema/owner option from Manage owners option group may cause script failure for [{0}] object

When the Exclude schema option is selected in the Options tab od the New project window

High warning icon


High

{0} {1} cannot be decrypted. Its body can’t be compared and synchronized

Encrypted object {1} cannot be decrypted in SQL Server 2005/2008. Its body can’t be compared and synchronized. Only permissions, extended properties will be synchronized

When encrypted SQL objects like SQL procedure cannot be decrypted

High warning icon

High

Adding Not null column [{0}] to table {1} without default may cause script failure

Synchronization script contains actions which add Not null column without default. The table will be rebuilt. Script will fail if table contains data

When the Not null columns are added with defaults

High warning icon

High

Altering column [{0}] for table {1} may cause script failure

Synchronization script contains actions which alter column. This change may cause script failure

When table column types are different and column is being altered

High warning icon

High

Altering column [{0}] in table {1} with built-in type may cause script failure

Synchronization script contains actions which alter column [{0}] in table {1} from a built-in type to a user-defined type. This change may cause data loss or script failure

When source column is user defined and destination is system type

High warning icon

High

Altering column [{0}] in table {1} with user-defined type may cause script failure

Synchronization script contains actions which alter column [{0}] in table {1} from user-defined type to a built-in type. This change may cause data loss or script failure

See previous warning

High warning icon

High

Cannot synchronize CLR object or data type {0} to SQL Azure database

Cannot script CLR object or data type to SQL Azure Database. SQL object of an appropriate type with empty body will be created

When synchronizing CLR object or data type to Azure SQL Database

High warning icon

High

Cannot synchronize table-valued type {0} to a database with a version that’s less than 100

Synchronization script contains actions which creates table-valued type {0}. Table-valued types are not supported in database with version less than 100

When synchronizing table-valued type to SQL database version earlier than 2008

High warning icon

High

Changing column from [{0}] to [{1}] on table {2} may cause data loss or script failure

Synchronization script contains actions which change the associated xml schema collection for a column. This change may cause table data loss or script failure

Differences in XML schema collection may cause script failure – it depends on data in such columns

High warning icon

High

Changing column [{0}] from Null to Not null in table {1} may cause data loss or script failure

Synchronization script contains actions which change column from Null to Not null. Script may fail or cause data loss

When changing from Null to Not null columns

High warning icon

High

Changing column length in [{0}] for table {1} may cause data loss or script failure

Synchronization script contains actions which change column length. These changes may cause table data loss or script failure

When source column length is less then destination – char (High) vs. char (10)

High warning icon

High

Changing column precision or scale in [{0}] for table {1} may cause data loss or script failure

Synchronization script contains actions which change column precision or scale. These changes may cause table data loss or script failure

When source column precision or scale are less then destination for floating types

High warning icon

High

Change tracking property for table {0} is not supported

Change tracking property for table {0} is not supported in database with version less than 100. Property won’t be scripted

When synchronizing Change tracking property for table to SQL database version earlier than 2008

High warning icon

High

Change tracking property for table {0} is not supported in Azure SQL Database

Change tracking property for table {0} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing Change tracking property for table to Azure SQL Database

High warning icon

High

Column [{0}] on table {1} has unsupported type

Column [{0}] on table {1} has geography, geometry or hierarchyid type. These are not supported in database with version less than 100

When synchronizing column on a table that has geography, geometry or hierarchyid type to SQL database version earlier than 2008

High warning icon

High

Column_set property for column [{0}] on table {1} is not supported

Column_set property for column [{0}] on table {1} is not supported in database with version less than 100. Property won’t be scripted

When synchronizing Column_set property for column to SQL database version earlier than 2008

High warning icon

High

Columnstore index {0} is not supported in Azure SQL Database

Columnstore index {0} is not supported in Azure SQL Database. Index won’t be scripted

When synchronizing Columnstore index to Azure SQL Database

High warning icon

High

Copying data of column [{0}] on table {1} may cause script failure

Synchronization script contains Cast statements in data preservation queries. These statements may cause script failure

When table column types are different, table is recreated and data is copied

High warning icon

High

Cryptographic provider name for credential {0} is not supported

Cryptographic provider name for credential {0} is not supported in database with version less than 100. Attribute won’t be scripted

When synchronizing cryptographic provider name for credential to SQL database version earlier than 2008

High warning icon

High

Data_compresion property for table {0} is not supported

Data_compresion property for table {0} is not supported in database with version less than 100. Property won’t be scripted

When synchronizing Data_compresion property for table to SQL database version earlier than 2008

High warning icon

High

Data_compresion property for table {0} is not supported in Azure SQL Database

Data_compresion property for table {0} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing Data_compresion property for table to Azure SQL Database

High warning icon

High

DateTime2 type for column [{0}] on table {1} is not supported

DateTime2 type for column [{0}] on table {1} is not supported in database with version less than 100. Column won’t be scripted

When synchronizing DateTime2 type for column on a table to SQL database version earlier than 2008

High warning icon

High

DateTimeOffset type for column [{0}] on table {1} is not supported

DateTimeOffset type for column [{0}] on table {1} is not supported in database with version less than 100. Column won’t be scripted

When synchronizing DateTimeOffset type for column on a table to SQL database version earlier than 2008

High warning icon

High

Date type for column [{0}] on table {1} is not supported

Date type for column [{0}] on table {1} is not supported in database with version less than 100. Column won’t be scripted

When synchronizing Date type for column on a table to SQL database version earlier than 2008

High warning icon

High

Data type with ‘max’ length for column [{0}] on table {1} is not supported

Data type with ‘max’ length for column [{0}] on table {1} is not supported in database with version less than 90

When synchronizing Data type with ‘max’ length for column on a table to SQL database version earlier than 2005

High warning icon

High

Dropping or recreating table [{0}] may cause table data loss

Script contains Drop statements for table. These statements may cause table data loss

When a table is dropped

High warning icon

High

Encrypted object {0} is not supported in Azure SQL Database

Encrypted object {0} is not supported in Azure SQL Database. Script execution may result in errors

When synchronizing encrypted object to Azure SQL Database

High warning icon

High

Filestream property for column [{0}] on table {1} is not supported in Azure SQL Database

Filestream property for column [{0}] on table {1} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing Filestream property for column on a table to Azure SQL Database

High warning icon

High

FileTable {0} is not supported in Azure SQL Database

FileTable {0} is not supported in Azure SQL Database. Table won’t be scripted

When synchronizing FileTable to Azure SQL Database

High warning icon

High

Fillfactor property of index {0} is not supported in Azure SQL Database

Fillfactor property of index {0} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing Fillfactor property of index to Azure SQL Database

High warning icon

High

Fulltext index on table {1} is not supported in Azure SQL Database

Fulltext index on table {1} is not supported in Azure SQL Database. Index won’t be scripted

When synchronizing Fulltext index on table to Azure SQL Database

High warning icon

High

Fulltext stoplist {0} is not supported

Fulltext stoplist {0} is not supported in database with version less than 100. Object won’t be scripted

When synchronizing Fulltext stoplist to SQL database version earlier than 2008

High warning icon

High

Four-part base object name for synonym {0} is not supported in Azure SQL Database

Four-part base object name for synonym {0} is not supported in Azure SQL Database. Synonym {0} cannot contain server part and this part will be truncated in script

When synchronizing four-part base object name for synonym to Azure SQL Database

High warning icon

High

Login [{0}] for user {1} can be created only in ‘master’ database of Azure SQL Database

Login {0} for user {1} can be created only in ‘master’ database of Azure SQL Database. Login won’t be scripted

When synchronizing a login for a user to Azure SQL Database

High warning icon

High

Memory-optimized table {0} is not supported

Memory-optimized table {0} is not supported in database with version less than 120. Table will be scripted as standard one (not memory-optimized)

When synchronizing memory-optimized table to SQL database version earlier than 2014

High warning icon

High

Natively compiled procedure {0} is not supported

Natively compiled procedure {0} is not supported in database with version less than 120. Procedure won’t be scripted

When synchronizing natively compiled procedure to SQL database version earlier than 2014

High warning icon

High

Natively compiled procedure {0} cannot be converted to standard one. Procedure will be recreated

Source and destination procedures differ in terms of native compilation attribute. Procedure {0} will be dropped and recreated to synchronize the difference

When synchronizing natively compiled procedure to standard one to Azure SQL Database

High warning icon

High

Not for replication property for trigger {0} is not supported in Azure SQL Database

Not for replication property for trigger {0} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing Not for replication property for trigger to Azure SQL Database

High warning icon

High

Pad_index property of index {0} is not supported in Azure SQL Database

Pad_index property of index {0} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing Pad_index property of index to Azure SQL Database

High warning icon

High

Rowguidcol property for column {0} on table {1} is not supported in Azure SQL Database

Rowguidcol property for column [{0}] on table {1} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing Rowguidcol property for column on a table to Azure SQL Database

High warning icon

High

Search property list {0} is not supported

Search property list {0} is not supported in database with version less than 110. Object won’t be scripted

When synchronizing Search property list to SQL database version earlier than 2012

High warning icon

High

Sparse property for column [{0}] on table {1} is not supported

Sparse property for column [{0}] on table {1} is not supported in database with version less than 100. Property won’t be scripted

When synchronizing Sparse property for column on a table to SQL database version earlier than 2008

High warning icon

High

Spatial index [{0}] on table {1} is not supported

Spatial index [{0}] on table {1} is not supported in database with version less than 100. Index won’t be scripted

When synchronizing Spatial index on a table to SQL database version earlier than 2008

High warning icon

High

Synchronization of memory-optimized objects in transaction cause script failure. You need to uncheck Include transaction handling in synchronization script option

Synchronization of memory-optimized objects in transaction cause script failure. You need to uncheck Include transaction handling in synchronization script option

When memory-optimized objects are being synchronized and the Include transaction handling in synchronization script option is checked under the Options tab of the New project window

High warning icon

High

Synchronization of memory-optimized objects may cause script failure if destination database doesn’t have a memory-optimized filegroup

Synchronization of memory-optimized objects may cause script failure if destination database doesn’t have a memory-optimized filegroup

When filegroups are not previously manually created in the destination data source for the synchronization of memory-optimized objects

High warning icon

High

The extended properties of object {0} are not supported in Azure SQL Database

The extended properties of object {0} are not supported in Azure SQL Database. Properties won’t be scripted

When synchronizing the extended properties of object to Azure SQL Database

High warning icon

High

The filegroup of table {0} is not supported in Azure SQL Database

The filegroup of table {0} is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing the filegroup of table to Azure SQL Database

High warning icon

High

Time type for column [{0}] on table {1} is not supported

Time type for column [{0}] on table {1} is not supported in database with version less than 100. Column won’t be scripted

When synchronizing Time type for column on a table to SQL database version earlier than 2008

High warning icon

High

User {0} with Certificate or Asymmetric_key argument is not supported in Azure SQL Database

User {0} with Certificate or Asymmetric_key argument is not supported in Azure SQL Database. {0} won’t be scripted

When synchronizing user with Certificate or Asymmetric_key argument to Azure SQL Database

High warning icon

High

With encryption property for procedure {0} is not supported in Azure SQL Database

With encryption property for procedure [{0}] is not supported in Azure SQL Database. Property won’t be scripted

When synchronizing With encryption property for procedure to Azure SQL Database

High warning icon

High

XML type for column [{0}] on table {1} is not supported

XML type for column [{0}] on table {1} is not supported in database with version less than 90. Column will be scripted as Ntext

When synchronizing XML type for column on a table to SQL database version earlier than 2005

High warning icon

High

XML schema collection {0} cannot be applied to column {1}

XML schema collection {0} cannot be applied to column {1} because XML schema collections are not supported in Azure SQL Database. Column will be scripted as usual XML column

When synchronizing XML schema collection on a column to Azure SQL Database