For the best web experience, please use IE11+, Chrome, Firefox, or Safari

ApexSQL Data Diff release notes

Release:

2022.02.0567

Date:

June 10, 2024

Fixes:

  • The "Failed to login. Internet connec􀆟on is required to con􀆟nue. Click Retry to try again" error is encountered on applica􀆟on start

Release:

2022.01.0564

Date:

March 21, 2022

Enhancements:

Fixes:

  • 198861: Tables with data including the leading quotes are not synchronized when a live database is the data source and a script folder is the destination data source
  • 198438: Data difference view window shows incorrect differences when the data is sorted by a column with the ‘int' data type
  • 201564: "Unable to cast object of type 'System.DBNull' to type 'System.String'" message is shown when comparing two databases while one database has an external data source
  • 205993: The actions list in the Summary and warnings step of the Synchronization wizard is incorrectly displayed when returning to the Synchronization direction step and updating the synchronization direction
  • 205992: "There was an error generating the XML document" error is encountered when the editor is changed in the Output options tab in the Synchronization wizard
  • 199215: Redundant return code 11 error for unsupported edition appears when using CLI
  • 198862: The additional objects appear in the script folder and NULL is shown in the Data difference view window for the fields when the synchronization is finished while using the live database vs script folder
  • 198439: The application clientis unresponsive when using mouse scroll in the Data difference view window for product version 2019 R2
  • 197148: Incorrect link is used when using Help button in the Resources tab
  • 193158: "The 'Stub2019' package did not load correctly" error is encountered when the Visual Studio 2019 is started
  • 188883: "The ConnectionString property has not been initialized" message is shown when trying to synchronize live database with Git repository
  • 188692: Wrong results are shown in the HMTL interactive report when single row is checked
  • 188691: Wrong results are shown in the HMTL simple report when single row is checked
  • 170335: "Make sure correct username and password are specified" message is shown when Git source control password is changed in host and updated in the application connection configuration
  • 165269: Custom mapped object pairs are not shown in the Object filter tab of the New project window
  • 165267: Custom schema mapping is not saved after the comparison process is finished, after the Edit button is clicked from the Home tab and switched to the Object mapping tab
  • 161562: All rows for a compared table are checked in the Data difference view panel, upon refresh action is performed after the check-uncheck sequence of events occur
  • 163434: Records are not synchronized when a project file is saved from the Object filter tab in the New project window and used in the CLI
  • 140586: The main application windows disappear in the case when the primary monitor displaying it is disconnected while sub-application windows are displayed on a secondary monitor
  • 151315: The custom object mapping pairs become unpaired when the Refresh button is clicked under the Object mapping tab in the New project window
  • 165265: Objects that belong to a schema mapping pair that is removed from the Object mapping tab are compared and shown in the Results grid
  • 211792: The state of the check box in the main grid and in the data difference view is not consistent when uncheck columns in the data difference view
  • 211791: "Select for synchronization" message in the Output options tab of Synchronization dialog is cut-off when comparing the script folder with path containing more than 40 characters with database

Changes:

Release:

2019.03.0535

Date:

February 02, 2021

Fixes:

  • 199046: "Object reference not set to an instance of an object" error message is shown on SQL Server Management Studio startup after the add-in installation
  • 194741: "Error 547, Severity 16, Line 7366. The ALTER TABLE statement conflicted with the FOREIGN KEY constraint" error is encountered since the Re-enable check constraints with Check option didn't work after the synchronization is finished between two SQL databases
  • 188643: Objects under the Object filter tab in the New project window need to be clicked twice on the checkbox to be checked or unchecked after all objects were unchecked first
  • 189678: Wrong results are shown in the Data Difference View panel for data that contains (a single quotation mark) (single quotation marks) when comparing a script folder and a SQL database
  • 184173: The SQL Server Management Studio is automatically closed when the application is integrated into it

Release:

2019.02.0527

Date:

April 08, 2020

Fixes:

  • "Username required" error is encountered when trying to compare databases without permissions to access the master database using SQL Server Management Studio
  • "Unable to connect to SQL Server apexsqltesting.database.windows.net. One ore more errors occurred" error is encountered when trying to compare databases without permissions to access the master database
  • "The destination information is missing or it is incorrect" error is encountered when trying to compare databases without permissions to access the master database

Release:

2019.01.0522

Date:

January 09, 2020

Enhancements:

  • SQL Server 2019 support
  • Temporal tables support
  • SQL graph tables support
  • Pre-comparison quick-check for data differences option is added under the Object filter tab of the New project window
  • Play a sound upon finished operation option is added under the General tab of the Options window

Fixes:

  • "Reloading metadata failed. Invalid URI: The URI is empty" message is shown when running a project file which contains the Active Directory - Universal with MFA support authentication
  • The Data compare query window is not shown when a SQL database is right-clicked and the Set as source or destination command is used in Visual Studio
  • Authentication type is automatically changed to the Active Directory - Universal with MFA support authentication when changing SQL Server
  • "Reloading metadata failed” error is encountered when trying to compare two Git repositories from Bitbucket.org
  • "Specified cast is not valid" error is encountered when the filter option for the column is clicked in the Data Difference view panel
  • The Save button is not working properly when editing project settings
  • "Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding" error is encountered while retrieving row count for the Row filter dialog
  • Backspace key selects text under the condition box of the Filter editor dialog instead of deleting it
  • "Item has already been added" error is encountered when all objects are unmapped under the Object mapping tab in the New project window
  • The Synchronization summary in the CLI shows that different records are updated, even though the “d” (different) argument is not used in the /records_to_synchronize switch
  • The application add-in is integrated in all SQL Server Management Studio and Visual Studio versions through the silent installation even though the /components switch with its values is not specified
  • The application cannot be uninstalled if any version of Visual Studio is running, even though the application is not integrated into any VS
  • "Value cannot be null" error is encountered when using the Copy cell value right-click command in the Data difference view panel for the Null cell value
  • The application's add-in is integrated automatically in SQL Server Management Studio when installed via ApexSQL Installer
  • "Check for update failed. Problem occurred connecting to the ApexSQL server" error is encountered when the Get updates button is used from the ApexSQL menu in Visual Studio 2019

Changes:

  • Dark theme is now used as the default application theme
  • Save as dialogs are now inheriting the application theme

Release:

2018.07.0386

Date:

June 21, 2019

Changes:


Release:

2018.07.0384

Date:

June 13, 2019

Fixes:

  • The application doesn't integrate with SQL Server Management Studio 18 GA version
  • "Object reference not set to an instance of an object" error is encountered when the OK button is clicked in the Connection options dialog after changing value for timeout options
  • The application is started in light theme, when the Data comparison is initiated from SQL Server Management Studio
  • Check-boxes cannot be checked under the Object filter tab, if the New project window is resized
  • The sort order is not numerical in the Data difference view panel, instead the INT columns are arranged by order of only the first digit

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The Get by label option is not retrieving label state and it uses the latest instead when using Mercurial repository

Release:

2018.06.0324

Date:

February 05, 2019

Enhancements:

  • SQL Server 2019 CTP 2.0 support
  • SQL Server Management Studio 18 integration support
  • Visual Studio 2019 integration support
  • Active Directory authentication – Universal with MFA support
  • CLI switches:
    • Tables with specified schemas can be filtered via the /include switch: "Schemaname.ObjectName"
    • New value for the Synchronization options switch: Ignore pre-processing script failure [ippsf]
    • New value for the compatibility level /cl1 and /cl2 switches: SQL2019 [2019]

Fixes:

  • "Could not load file or assembly 'Microsoft.SqlServer.Smo" error is encountered when the Browse button is clicked for the Use this directory option of the Backup the database before synchronization option in the Synchronization wizard
  • The number of rows is not shown in the Rows column of the Object filter when Script folder or Source control are used as data sources
  • The Get by label option is not retrieving label state and it uses the latest instead when using Team Foundation Server repository
  • Server field is empty on the Destination side under the Data sources tab when the New button is clicked in the Project management window
  • Incorrect comparison results are shown when rows are shown as missing and additional, instead of different, after the initial comparison key is changed
  • Missing ability to include tables with specified schemas through the CLI using the /include switch
  • Redundant double quotation marks around the application installation path for the generated PowerShell script under the Automation script window
  • Redundant double quotation marks and output name are shown in the Automation script window
  • "The specified folder does not contain the appropriate folder structure" message is shown when a selected source control project contains the Assemblies folder
  • The set date format yyyyMMdd for the Apply date format option is not applied in the synchronization script
  • Filters are not working when any value is entered for specified column in the Results grid
  • Filters are not working when any value is entered for specified column in the Data difference view window
  • Objects cannot be unchecked under the Object filter tab of the New project window when the object list is filtered by name or schema
  • The custom object mapping pairs are not checked by default under the Object filter tab for the comparison process
  • Memory optimized tables are not synchronized and an error is encountered when the Include transaction handling in synchronization script option is checked under the Options tab of the New project window

Changes:

  • Backup database before synchronization is now unchecked by default
  • Default value for the /backup switch is set to None
  • The application now requires Microsoft .NET framework 4.7.2
  • ApexSQL parent menu of the add-in is now located under the Extensions main menu in Visual Studio 2019

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The Get by label option is not retrieving label state and it uses the latest instead when using Mercurial repository

Release:

2018.05.0244

Date:

September 06, 2018

Enhancements:

  • New error handling and send logs functionality
  • Improved application installer with a dark theme
  • New application icon
  • High DPI and 4K resolution support
  • Save automation script as a PowerShell script
  • Visual Studio integration support
  • Active Directory – Password authentication support
  • Active Directory – Integrated authentication support
  • Comparison summary output is added under the Export options in the Home tab
  • Ignore pre-processing script failure option is added under the Synchronization options
  • Additional outputs are added in the Automation script window for:
    • Comparison summary
    • Synchronization actions
    • Synchronization warnings
    • Execution results
    • Synchronization summary
  • CLI switches:
    • Source and destination login for Azure Active Directory authentication [/ad1 and /ad2]
    • Folder mapping settings for source and destination data sources [/fm1 and /fm2]
    • New value for the Synchronization options switch: Ignore pre-processing script failure [ippsf]
    • Name of the executable installer or C# solution package [/pknm]

Fixes:

  • “Column 'ColumnName' does not belong to table” error is encountered when the custom mapped tables and columns are selected in the Results grid to view data differences
  • “Object reference not set to an instance of an object” error is encountered when SQL Server 2005 database is compared with a SQL Server 2014 database
  • Data source information are not remembered when the Edit button is clicked for the currently compared data sources
  • Tables and columns with different names are not shown in the Object filter tab, even though they were mapped in the Object mapping tab
  • Project file is shown in the Recent projects list even after the Delete or Remove from list commands were used
  • Project file is not shown in the Recycle bin when the Delete right-click command is used in the Project management window
  • The /records_to_synchronize switch does not contain any value if all objects are unchecked and the Save as batch feature is initiated
  • Missing the "n" value in the /output_elements switch under the Save as batch window, when none of the Output elements options is checked
  • The /on switch is not shown in the Batch script for the C# solution and Executable installer, even though the Package name from the Package tab is checked
  • The shortcut (Ctrl + E) for the Edit current project settings command does not work
  • The shortcut (F5) for the Refresh command does not work
  • Missing the Last value for the /backup_set1 and /backup_set2 switch value to choose the last backup set
  • "The type initializer for 'ApexSql.Common.UI.Forms.MetroMessage' threw an exception" error is encountered when activating the application through add-in in SQL Server Management Studio
  • Wrong values are specified in the /records_to_synchronize switch when only different/missing/additional rows checked
  • "The custom key must contain at least one checked field" message is shown when the Save button is clicked after a click on the Reset button in the Customize comparison key
  • The data comparison process cannot be initiated from SQL Server Management Studio when SQL Server authentication is used in the Data compare query
  • SQL Server Management Studio stops working when SQL Server instance is not chosen and Database list is used from Database drop-down list in Data compare query window
  • SQL Server Management Studio stops working when the Setup button is clicked in the Data compare query window to initiate the Source control setup wizard
  • SQL Server Management Studio stops working when SQL Server instance is not chosen and Database list is used from Database drop-down list in Data compare query window
  • SQL Server Management Studio stops working when use the Data compare option on a SQL Server Analysis Services instance
  • "There is not enough space on the disk" error is encountered while comparing data sources and there is no more space on disk
  • "Source control error: Delete failed for 'Item 'ItemName' is obsoleted" error is encountered when trying to delete folder in the Subversion source control repository
  • “Reloading metadata failed” error is encountered when comparing data source against a Team Foundation Server repository label
  • Release and patch update application error issue when the updating gets canceled on 0% of download, and then started again
  • Wrong values are specified in the /records_to_synchronize switch when only different/missing/additional rows checked
  • “Cannot connect to '(local)'” error is encountered when there is no default named instance (local) on a machine where the application is installed
  • Errors are not shown in the top of the Results window if any is encountered during the synchronization process
  • The Results window does not contain information about how much rows is updated/deleted/added to a synchronized object(s) when synchronizing to a database
  • The missing rows are wrongly shown in the Additional column in the Comparison summary when using the CLI
  • Missing the information about executing Pre and Post processing scripts in the Actions tab
  • "Package executed successfully" message is shown in the Execution results window of an executable installer even when the execution is canceled upon first error
  • Missing an information message when mapping newly added objects to the save project in the CLI
  • The copy row values command from the right-click context menu of the Data difference view panel pastes inverted row order

Changes:

  • Save as batch is now Automation script

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The Get by label option is not retrieving label state and it uses the latest instead when using Mercurial repository

Release:

2018.04.0216

Date:

July 31, 2018

Fixes:

  • "Could not load file or assembly 'file:///Windows-Drive:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\ApexSQL.Engine.Controller'" error is encountered when a backup is loaded as a data source in the Data sources tab of the New project window
  • "Unknown error has occurred. Please see %AppData%\Local\ApexSQL\ApexSQL AppName>\crash.txt" error is encountered when ApexSQL Log or ApexSQL Recover are started while ApexSQL Data Diff is installed

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The Get by label option is not retrieving label state and it uses the latest instead when using Mercurial repository
  • Labels cannot be compared for the Team Foundation Server repository

Release:

2018.03.0215

Date:

June 15, 2018

Fixes:

  • SQL Server Management Studio stops working when ApexSQL Data Diff 2018 R2 add-in is installed alongside ApexSQL Diff 2018 add-in and any Schema compare command is initiated

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The Get by label option is not retrieving label state and it uses the latest instead when using Mercurial repository
  • Labels cannot be compared for the Team Foundation Server repository

Release:

2018.02.0205

Date:

January 26, 2018

Fixes:

  • The add-in icons disappear in SQL Server Management Studio 2012 and 2014 when installed in parallel with any other ApexSQL add-in product released after January 22, 2018
  • The application repeatedly asks for the activation key when it is started on an Amazon EC2 instance after the virtual machine resources were deallocated and allocated again
  • The silent installer is stopped when the application needs to automatically download and install .NET Framework, even when the /verysilent switch is used

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The Get by label option is not retrieving label state and it uses the latest instead when using Mercurial repository
  • Labels cannot be compared for the Team Foundation Server repository

Release:

2018.01.0193

Date:

December 27, 2017

Enhancements:

Fixes:

  • "HTML option is already selected as secondary output type. Select another primary output type" message is shown even when the Secondary output type is unchecked in the Save as batch window
  • The cursor is always back to the beginning of the text box for the Package name option when the tag buttons are clicked
  • The warnings output file cannot be created without its dependent switch /synchronize
  • The progress bar for the comparison process is not showing the exact percentage while comparing
  • The /indicate_default_db switch does not contain quotation marks in the Save as batch window
  • Total number of rows is shown in the Comparison process window even when the Row filter is used to narrow down the amount of rows
  • The View tab in the Object filter and Object mapping tabs is not shown even though the View option is selected in the Options tab of the New project window under the Objects to compare section
  • The Project management window is opened in front of the Update window when new update is available
  • The number of mapped columns is not changed until the selection is changed to another object
  • The number of the columns is not changed in the Object filter for the edited object, but the number of columns is changing for other objects, when the Filter editor is applied
  • "Attempt by method" error is encountered when the Refresh button is clicked for branches when the Mercurial source control system is chosen
  • SQL Server Management Studio 2016 and 17 stops working when a database backup is loaded in the Data compare query window
  • The title and source and destination data sources are not shown in exported reports if none of the Header options is checked under the Options tab in the New project window
  • Nothing is shown at the top of the exported report when one or two header options are checked under the Options tab in the New project window
  • Tables with text columns are missing in the Results panel and their number is shown as excluded in the status bar, even though they are mapped and checked for the comparison, when the Ignore case in the text data types option is checked
  • The license file disappears when virtual machine is stopped and then run on Amazon AWS
  • "The selected source control project does not have a corresponding folder structure for tables/views" message is shown when the Test or Finish button is clicked for the Perforce source control depot
  • "Make sure that correct username and password are specified" message is shown when specifying local folder as repository for the Git source control system, which doesn't require username and password
  • "The selected source control project does not have a corresponding folder structure for tables/views" message is shown when the Browse button is clicked to select a project for a Git repository hosted by Visual Studio Online

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The Get by label option is not retrieving label state and it uses the latest instead when using Mercurial repository
  • Labels cannot be compared for the Team Foundation Server repository

Release:

2017.02.0182

Date:

December 13, 2017

Fixes:

  • "Microsoft SQL Server Management Studio 17 is not installed. Please install this version to integrate into" message is shown in the add-in integration step of the installation wizard when SQL Server Management Studio 17.4 is installed
  • "Cannot find column 'ColumnName' in file 'C:\...\TableName [Data].sql'" error is encountered due to missing columns in the insert statement while comparing source control project againts a database
  • "Precision of destination column is less than precision of source column. This may cause overflow" warning is shown before the synchronization and the destination column is synchronized even though the application shouldn't allow it
  • "Generating the synchronization script" message is shown before creating each output file in the CLI, even though the synchronization script was not specified as an output type
  • None of the commands are working in SQL Server Management Studio
  • Missing the Data compare command in the right-click menu of Object Explorer in SQL Server Management Studio
  • "Object reference not set to an instance of an object" error message is shown when trying to close SQL Server Management Studio
  • "A network-related or instance-specific error occurred while establishing a connection to SQL Server" error is encountered when executing queries in the Row filter window for databases located on remote servers with slow connection
  • "Object reference not set to an instance of an object" is encountered after performing the synchronization process
  • "Object reference not set to an instance of an object" is encountered when selecting Views tab in the Object filter tab of the New project window
  • Temporary comparison files are created to the "C:\Users\UserName\AppData\Local\Temp" location even though another location was specified with the /dcl switch in the CLI

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • Local Git repositories require any username and password to be entered in order to load a project
  • Labels cannot be compared for the Subversion and Team Foundation Server repository
  • Perforce source control depot cannot be set as source or destination

Release:

2017.01.0170

Date:

October 03, 2017

Enhancements:

  • Support for Script folder data source
  • Create rollback script for destination database before synchronization
  • Create script folder backup for destination script folder or source control before synchronization
  • GUI themes
  • Export:
    • Synchronization actions
    • Synchronization warnings
    • Execution results
  • CLI switches:
    • Source and destination script folder path [/sf1 and /sf2]
    • Create rollback script for destination databases before synchronization [/crbs]
    • Destination rollback script file name [/rsfn]
    • Create script folder backup for destination script folder or source control before synchronization [/bsf]
    • Destination script folder backup path [/bsfp]
    • Synchronization actions output [/aco]
    • Execution results output [/ero]

Fixes:

  • The bottom buttons in the New project window are not visible when DPI is 125%
  • Recomparison can fail after synchronizing to the Mercurial source control repository when the synchronization script exceeds 300 MB in size
  • Synchronization to the Team Foundation Server repository can fail when the synchronization script exceeds 300 MB in size
  • “Unable to execute file in temporary directory. Setup aborted” error is encountered when the application is downloaded and installation is run from web browser
  • Creating of new projects from the Source control setup wizard for the Mercurial source control system version 3.9 and above is not working
  • Records are shown as missing and additional, when comparing rowguid column values that are part of the comparison key, but there are no differences
  • The Use compression and the Error handling options are not shown as CLI switches in the Batch script
  • Return error code 9 is shown when the incorrect project file extension is used in the CLI, instead of showing corresponding return error code 10
  • “Object reference not set to an instance of an object” error is encountered when using a project file in the CLI from another ApexSQL application and a GUI window is shown
  • The Backup switch disappears from the batch script, in the Save as batch window, after the Project file option is checked
  • “Invalid cast from 'DateTime' to 'Decimal'” error message is encountered when incorrectly converting mapped columns that have the DateTime and Decimal values during its comparison
  • The Edit current project settings option in the right-click context menu, in the Results grid, is always disabled
  • Tables with the primary key column with the char data type are not synchronized properly, when synchronizing the Mercurial source control repository with a database
  • “Cannot access a disposed object” error is encountered when editing one project several times in a row
  • "Item has already been added. Key in dictionary: '1' Key being added: '1'" error is encountered during the comparison of Azure SQL Database when two SQL partitions have the same partition index
  • “Please choose at least one object type to export” message is shown when HTML report should be created through the CLI, even if equal value is specified in the HTML reporting option /dhtmo switch when comparing equal data sources
  • Return error code 1 is shown in the CLI output when two compared data sources are equal and HTML report fails to be created
  • All rows are synchronized even when only a couple of them were checked for synchronization to a source control project and all rows for the synchronized table become unmapped
  • Default schema mapping pairs of previously loaded data sources are not changed, if data sources are changed and the Schema mapping tab is clicked to load and show new schema mapping pairs
  • “The numeric value provided is out of the range” message is shown when the “n” value is used for the /batch_every_n_rows switch in the CLI
  • Not all computed columns are ignored when the Ignore computed columns option is checked in the Options window
  • "The Add-in 'ApexSql DataDiff Addin' failed to load or caused an exception" message is shown when SQL Server Management Studio 2012 is run after updating the application that was previously integrated into it
  • The Show only checked/unchecked objects buttons need to be clicked three times when changing from one state to another
  • Records are shown as different when databases that contain SQL variant column values are synchronized
  • The application is generating logs, even when the /log_level switch is set to the “None” value
  • HTML report contains equal objects, even when the “equal” value is not set for the /dhtmo switch
  • GUI dialog is shown in the CLI when the source control data source is incorrectly defined and the provided message is incorrect
  • Views node is shown in the HTML report even when views are not included in the comparison process
  • Warnings are not logged, even when the “warning” value is set for the /log_level switch
  • The New project window is closed when the comparison process is canceled
  • The installation wizard is detecting a running SQL Server Management Studio and prevents installation, even if that version is not selected for add-in integration
  • The synchronization script is created through the CLI, even when only data source switches are specified without the /sync switch
  • A database is not accessible once loaded in ApexSQL Data Diff, even if that database is not used in the current project
  • Comparison results need to be refreshed twice when a table is added to source/destination, in order to map it
  • Checked objects with the same names, but with different case in names, in the saved project file become unchecked, if different data source is set with the different case in object names
  • "The GIT repository is not a BARE one: C:/Users/UserName/Desktop/GitRepo" message is shown when the Browse button is clicked for a local repository that is a Bare one
  • "Arithmetic operation resulted in an overflow" error is encountered when the Results window should be shown at the end of the synchronization process

Changes:

  • /ignore_new_objects switch is moved to the /data_comparison_options switch as a value
  • Header options under the Options tab in the New project window are now unchecked by default
  • Optional package information options under the Package tab in the New project window are now unchecked by default

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • Local Git repositories require any username and password to be entered in order to load a project
  • Labels cannot be compared for the Subversion and Team Foundation Server repository

Release:

2016.05.0139

Date:

June 06, 2017

Enhancements:

  • SQL Server 2017 CTP 2 support
  • SQL Server Management Studio 17 integration

Fixes:

  • "Data at the root level is invalid. Line 1, position 1" error is encountered when comparing a database with a Team Foundation Server project containing the database script previously created with ApexSQL Source Control
  • Data rows for the nvarchar(500) column type are shown as equal when comparing non-Latin characters stored as question marks against the real data with non-Latin characters
  • Rows that are selected but aren't visible in the Data differences panel won't be affected with the Check/Uncheck selected options
  • "Setup has detected that SQL Server Management Studio is running on this machine" message is shown in the installation wizard when a different SQL Server Management Studio version than the selected one is running
  • "Activation key doesn't exist" message is shown when trying to extend the evaluation if the system date was previously modified
  • SQL Server version is not preserved and defaults to SQL Server 2014in the source control information in the Data sources tab
  • The Results window is shown even when the No button is clicked on the "Changes will be made to source control repository " message when synchronizing with a source control project
  • The application can be uninstalled even while the SQL Server Management Studio is running
  • The Synchronization summary and Changes sections are shown in the CLI with information that all checked objects are synchronized even when an error has occurred during the synchronization process

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • Synchronization to the Team Foundation Server repository can fail when the synchronization script exceeds 300 MB in size. Read more
  • Recomparison can fail after synchronizing to the Mercurial source control repository when the synchronization script exceeds 300 MB in size. Read more
  • All rows are synchronized even when only specific ones were checked for synchronization to a source control project and all rows for the synchronized table become unmapped

Release:

2016.04.0128

Date:

March 15, 2017

Enhancements:

  • CLI switches:
    • Return error code on equal results [/rece]
    • Comparison summary output [/cso]
    • Synchronization warnings output [/wao]
    • Synchronization summary output [/suo]
  • CLI no differences detected return code [102]

Fixes:

  • Varbinary(max) type fields are not synchronized when comparing and synchronizing two databases
  • The application changes table schema with check into with nocheck statements during the data synchronization
  • Temporary comparison files are not created in the standard temp folder and are not deleted upon starting a new project
  • Excess log file is created in the application log folder “C:\Users\UserName\AppData\Local\ApexSQL\ApexSQLDataDiff\Log”
  • "Exclusive access could not be obtained because the database is in use" error is encountered during the synchronization from the CLI when there is already an open connection for the destination database
  • CLI switches /author, /legal, /script_format, and /no_scr_use_db are shown in the batch script when the corresponding options are unchecked under the Options tab in the New project window
  • "Unable to cast object of type 'System.Int32' to type 'System.Byte[]'" error is encountered while creating the synchronization script after comparing databases that have tables with timestamp column as custom comparison key
  • "Input string was not in a correct format" error is encountered while comparing databases which tables that have SQL variant column values
  • The synchronization summary is shown after the recomparison in the CLI
  • The add-in doesn't integrate into SQL Server Management Studio 16.5.3 when it is the only ApexSQL add-in installed
  • All records are shown as synchronized through the CLI changes summary, even when specified otherwise with the /rts switch to synchronize only: missing, different, or additional
  • The ApexSQL defaults button does not revert default values for Header options in the Options tab

Changes:

  • CLI switch Script format [/sf] is now Output elements [/oe] switch

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • Synchronization to the Team Foundation Server repository can fail when the synchronization script exceeds 300 MB in size. Read more
  • Recomparison can fail after synchronizing to the Mercurial source control repository when the synchronization script exceeds 300 MB in size. Read more

Release:

2016.03.0110

Date:

October 11, 2016

Enhancements:

  • Support for SQL Server on Amazon RDS
  • Support for SQL Server Management Studio 2016 integration
  • Support for Source control data source
  • Improved HTML reports
  • Schema mapping switch [/sm]
  • Sound playing switch upon finished operation [/be]
  • Logging level switch [/log]:
    • Errors
    • Warnings
    • All
    • None

Fixes:

  • "Select object(s) to synchronize" message is encountered when the Synchronize button is clicked after the Refresh button
  • Missing the Incomparable section in the Comparison summary in the CLI
  • The comparison process is stuck when one of the data sources is a database backup without data in it
  • The Synchronization summary and Changes output will have minus values for updated, added, deleted, and synchronized rows, if some of the objects are excluded for the comparison and synchronization process
  • The /exclude_recomparison_summary switch is not added in the batch script when the Recompare after synchronization option is unchecked in the Synchronization wizard
  • The application will synchronize all objects in the CLI, if all different objects are unchecked in the project file
  • "Column 'column_name' does not belong to table" message is encountered upon the comparison process when the specific object mappings are made in a specific database
  • The project file option in the Save project as batch file window is not replacing all switches
  • Rows are not mapped and they are showed as missing and additional, when a specific Custom comparison key is used during the comparison of specific databases from SQL Server 2014 and SQL Server 2008
  • "Error on saving resource: (local).DatabaseLongName.csproj" error is encountered while saving an executable installer or C# solution with a file name that exceeds 260 characters
  • Missing an option to choose Backup as a data source in SQL Server Management Studio
  • HTML report is generated after the recomparison process and it doesn't contain data rows for the mapped table in the project file
  • "There are no objects in project file to be compared. Data about objects is saved after the comparison process is done in GUI" message is encountered in the CLI when all tables are unchecked in the saved project file and only views are compared
  • Records for the memory optimized table are shown as equal in the Results grid, if the compared tables are located in databases on SQL Server 2016
  • Temporary synchronization scripts are not deleted upon closing the application or starting a new project
  • Temporary comparison files are not deleted upon finished execution via CLI
  • Unicode indicator N is added as a prefix in the synchronization script, even for non-Unicode columns
  • The checked objects in the Object filter tab become unchecked after applying the Find filter and running the comparison
  • "Unable to cast object of type 'System.Data.SqlTypes.SqlString' to type 'System.String'" error is encountered during the comparison of SQL Server 2016 database backup and a database
  • Data differences are not shown in the HTML report, if views are included in the report
  • Wrong column is mapped in the Object mapping tab when one column is in the source and two columns are in the destination database
  • "Cannot import dll:<utf8>C:\Users\UserName\AppData\Local\VCLStyleSkin\VclStyleslnno.dll" error message is encountered while uninstalling the application with any Windows account with administration privileges that was not used during the installation
  • Missing an information tooltip that indexed view is required to perform the data comparison for the selected view
  • Wrong number of rows is shown in the HTML report and in GUI when comparing views
  • The Yes button is not working after exporting HTML report that exceeded 100 MB in size
  • Filtering options in the Object filter tab are not working in correspondence to each other
  • The synchronization script is not deleted from the temporary folder after the synchronization is finished
  • The application closes when closing the Application error window
  • Non existing argument causes test failure each time when default executable in the Output tab of the Options window is run
  • Wrong number of rows is shown in the Synchronization summary and Changes sections in the CLI when specific objects are selected for the comparison and synchronization process
  • Equal tables without rows are not shown in the Equal section of the Comparison summary in the CLI
  • The Package logging folder path in the Package tab is not restored to default when the ApexSQL default button is clicked
  • Missing an information message that batch file has been created and saved
  • Missing the Fit to screen option in the Results grid and Data difference pane
  • The copyright sign cannot be converted in the Legal field
  • Missing an option to filter out all checked/unchecked objects in the Object filter
  • Missing the Fit to window and Auto-size options in the Object filter tab
  • The Filter editor condition is not remembered and it is not shown when the Edit project button is clicked
  • The About window from the Executable installer cannot be moved
  • The application can be uninstalled while it was running
  • Incorrect message and return code are shown when wrong path or name is specified for database backup data source
  • Incorrect return code is provided when a wrong file/path is specified for the /prescript_file_path and /postscript_file_path switches
  • Rows become checked when moving through the Data difference pane with the Previous different row option
  • Vertical scroll bars for Tables/Views and Data sections in HTML reports are causing overlapping
  • Missing the auto-size option for columns in the Data difference pane
  • Missing an information message that an executable installer or C# solution was created and saved when creating it from the GUI
  • "Conversion failed when converting date and/or time from character string" error is encountered during the synchronization of specific databases
  • The application is showing equal results only for tables that are completely equal in the CLI
  • Missing an option to change file names of reports from the GUI
  • The Backup the database before synchronization option is not creating backups for destination databases that are located on SQL Servers that have additional properties in their product level: (SP2-CU7), (RTM-GDR), etc.

Changes:

  • /no_scr_use_db switch and the UseTransaction [ut] option, is moved to the /data_sync_options switch as option values
  • /exclude_recomparison_summary switch is moved to General synchronization options switch as an option value

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • Synchronization to the Team Foundation Server repository can fail when the synchronization script exceeds 300 MB in size. Read more
  • Recomparison can fail after synchronizing to the Mercurial source control repository when the synchronization script exceeds 300 MB in size. Read more

Release:

2016.02.0083

Date:

May 25, 2016

Enhancements:

  • Support for SQL Server 2016
  • Schema mapping
  • Save project as batch
  • Improved HTML reports
  • Help to HTML switch [/hth]
  • Ignore new objects switch [/ino]
  • Silent switch [/slt]
  • Improved CLI output messages:
    • Comparison summary
    • Warnings output
    • Synchronization summary
    • Changes output
  • Warnings handling switch [/wh]:
    • Ignore warnings [iw]
    • Abort on medium or high warnings [amh]
    • Abort on high warnings [ah]
    • Default [dft] - sets the Ignore warnings argument
  • Package options switches:
    • Compress package [/pkcm]
    • Error handling [/pke]
    • Package author [/pkaa]
    • Package company [/pkco]
    • Package legal [/pkal]
    • Package comments [/pkac]
    • Package Visual Studio version [/vsv]
    • Package default database [/ddb]
    • Package manifest file [/cmf]
    • Package script file [/cdf]
    • Package CLI file [/ccf]
    • Run package upon creation [/ren]
    • Open C# solution in Visual Studio upon creation [/ovs]
  • Return error codes switch [/rc]
  • 17 new CLI return error codes:
    • Invalid switch
    • Duplicated switch
    • Missing argument
    • Missing a dependent switch
    • Value out of range
    • Invalid file path
    • Invalid project file
    • Unsupported edition
    • Invalid activation key
    • Trial has expired
    • Connection timeout
    • Connection failed
    • Operation canceled
    • Application error
    • Execution error
    • Execution timeout
    • Output file creating failed
  • Enhancements in previously supported Azure SQL Database V12 object types:
    • Tables:
      • ON keyword
      • TEXTIMAGE_ON
      • column_definition
        • NOT FOR REPLICATION
        • ROWGUIDCOL
      • 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
    • Views:
      • WITH ENCRYPTION

Fixes:

  • Missing an option to check if old data should be done or not WITH CHECK
  • Missing an option that will include/exclude newly added objects to/from comparison and synchronization
  • “The file sync.sql already exist. Use the /f switch to overwrite it” message is encountered after the comparison process is finished in the CLI, rather on the beginning
  • The Excel report and CSV export are not generated if specified as the /ot2 switch
  • Incorrect information about generated Excel reports, when the IndividualFile argument is used in the /exco CLI switch
  • “Unexpected error occurred” error is encountered when invalid regular expression is used in the CLI switch
  • Missing a switch to set up the custom comparison key in the CLI
  • Missing switches for setting up package options and Visual Studio versions in the CLI
  • The /backup_set1 and /backup_set2 switches are not working correctly and the first backup set from the backup file will be always compared
  • The Embedded script, in the Additional script tab, does not allow the copy/paste option
  • Errors are encountered when the Synchronize now action is used to synchronize data from SQL Server database to SQL Azure database
  • “Backup set is not selected” error message is encountered while comparing database backups on Windows 7 with SQL Server 2012 installed
  • “Index was out of range. Must be non-negative and less than the size of the collection” error is encountered while unchecking rows in the Data difference pane for a specific set of database backups
  • “Select object(s) to synchronize” message is encountered when all missing or additional rows are checked, but the other ones are not, and therefore the corresponding table is not checked
  • “Value cannot be null” error is encountered while exporting specific records to an Excel file
  • The synchronization script is larger than in previous version, as equal data is also added to the synchronization script
  • “Package executed successfully” message is always encountered, even if something went wrong during the execution of the Executable installer
  • The Save as button for the Internal editor, in the Synchronization wizard, closes application when clicked
  • “Could not find file 'C:\Users\crazy_000\Documents\ApexSQL\ApexSQLDataDiff\AdventureWorks2014.dat'” error message is encountered if the Use compression option is checked and the Create script file option is not checked
  • Wrong error message is shown when the Executable installer is run
  • “Invalid column name 'remote_data_archive_filter_predicate'” error is encountered while loading databases from SQL Server 2016 CTP 3.3
  • “Object reference not set to an instance of an object” error is encountered while comparing Azure databases
  • “Invalid column name 'remote_data_archive_migration_state_desc', Invalid column name 'remote_data_archive_filter_predicate'” errors are encountered while loading databases from SQL Server 2016 RC1
  • The project file includes all tables in the comparison process when run from the CLI, even if only a few were selected in the Main grid and saved to the project file
  • “Unable to load backup. Format of backup file(s) is not supported. Unable to detect the SQL Server version” error message is encountered when comparing SQL Server 2016 database backup against database/backup
  • Wrong information message and return code are provided when the Command Prompt is run without Administration rights
  • Wrong return code is shown for IO error, when the application attempts to write to an existing file without specifying the /force switch
  • "Exception of type 'System.OutOfMemoryException' was thrown" error message is encountered when executing more than milion of rows with executable installer
  • The script is created and executed in the CLI, even when there are no differences
  • Missing the CLI switch to exclude/include columns from/to comparison process
  • HTML and HTML simple report default names are the same and it causes overwriting when exporting them one after the other
  • Missing the CLI switch for specifying HTML report options when used as a second output type
  • Missing the CLI switch for specifying Excel report options when used as a second output type
  • Missing the CLI switch for specifying CSV report options when used as a second output type
  • Incorrect synchronization switches are specified as a default in the CLI
  • "The synchronization script is executed with errors" message is encountered in the Script execution results window, if a pre-processing script has failed

Changes:

  • /pf switch is renamed into /pr
  • /of and /of2 switches are renamed into /on and /on2
  • HTML plain report is renamed into HTML simple report
  • The Disable foreign keys and triggers option is split into:
    • Disable foreign keys
    • Disable DDL triggers
    • Disable DML triggers

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • The application cannot be integrated into latest SQL Server Management Studio 2016 version

Release:

2016.01.0063

Date:

December 11, 2015

Enhancements:

  • Database comparison is up to 14% faster
  • Synchronization script execution is up to 100% faster
  • Support for SQL Server 2016 CTP3
  • Support for SQL Server Management Studio 2016 CTP3 integration
  • Performance has been significantly improved for data grid viewing and checking/unchecking
  • Data cache now takes up to 2 times less size
  • New output types:
    • C# solution
    • Executable installer
  • New Checked only rows option for HTML and Excel reports
  • New Export each object into an individual file option for Excel reports
  • Ignore object selection specified in the project file switch [/ipos]

Fixes:

  • "The object could not be found" error is encountered when the "Send logs" button is clicked in SQL Server Management Studio
  • Missing switches for the Excel report options in the CLI
  • The size of the Data difference pane is not restored after restarting the application in multi-monitor setup
  • The window layout is reset to default after updating the application, in the multi-monitor setup
  • The application allows the missing SQL Server Management Studio to be checked as valid, during the installation process
  • Sometimes the application is loaded in the background and it is not shown on the taskbar
  • The uninstallation process can be completed even if the application and/or SQL Server Management Studio are running
  • Cancelling the compare process can take a lot of time in specific cases when some large databases are compared
  • The application freezes when checking/unchecking tables from the Results grid, when there is a large number of data rows in tables

Changes:

  • Support for SQL Server Management Studio 2005 and 2008 integration have been deprecated
  • The application now requires Microsoft .NET framework 4.5.2
  • Windows Server 2003 is no longer supported

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2015.03.0057

Date:

September 04, 2015

Fixes:

  • Objects are not shown in the Results grid after the comparison, if the Cumulative update 7 for SQL Server 2012 Service pack 2 is installed

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2015.02.0055

Date:

June 10, 2015

Fixes:

  • The selection of tables/views resets to default when changing a database/server in the Data sources tab
  • The application cannot compare non-indexed views and cannot identify that there are some data in views
  • "Object cannot be cast to Empty" error is encountered when a column is unchecked in the Object filter the comparison process is run
  • When ApexSQL Diff is called, the current connection options in ApexSQL Data Diff are not loaded
  • A New project cannot be started, if one of the windows is left on the second monitor which is turned off
  • Missing tooltips in the export options window
  • Some options and descriptions are cut off if certain display settings are applied in Windows 8
  • The “Find data” option in the Data difference pane doesn't react to the Enter key
  • Objects are not synchronized, when the synchronization script is executed after comparing a specific database backup against the database
  • The selected color is missing for the selected difference record in the Details difference pane
  • The application will sometimes freeze and give a black background for a few seconds when working with large databases/backups or before the error/warning message on Windows 8 and SQL Server 2012

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2015.01.0053

Date:

April 02, 2015

Enhancements:

  • A "Find" feature for the "Data difference" pane is added
  • ApexSQL Diff can now be called from the Main form
  • A new "Ignore underscores in table/view" option is added
  • A new "Ignore computed columns" option is added
  • A new "Compare floats using maximum precision" option is added
  • A new "Treat empty strings and nulls as equal" option is added
  • A new "Drop unique indexes" option is added
  • A new "Re-enable constraints with CHECK" option is added
  • Data comparison results are included in HTML reports
  • A new Microsoft Office Excel XML export format is added
  • The Command Line Interface help output has been improved

Fixes:

  • "Object reference not set to an instance of an object" error is encountered when trying to clear filter while another one is not set
  • The application loses focus completely and goes to background after a new project compare
  • The recent projects list becomes empty after the application is updated
  • "System.Data.DuplicateNameException" error is not caught and a proper message pop-up is missing
  • The local servers list will not be shown sometimes in the "Browse for servers" window in SQL Server Management Studio
  • The "Row filter" window from the "Options" tab is not resizeable
  • Options from the "Options" tab, in the "New project" window, are cut off if certain display settings are applied in Windows 7
  • After closing the resized application window, it's not remembered on the next start up
  • The "Equal/Not equal" filter is not working correctly
  • Options from the "Default" window cannot be scrolled with mouse button
  • Table name in the "Row filter" window overlaps the table icon
  • Sufficient dialogue is shown after closing the synchronization results dialogue
  • "System.InvalidCastException. Unable to cast object of type 'ApexSql.DataDiff.Engine.Data.BigString' to type 'System.Byte[]'" error is encountered when trying to synchronize data from a specific database backup to a database
  • "System.NullReferenceException: Object reference not set to an instance of an object" error is encountered when cancelling comparison of a specific database backup and database
  • The exported missing and additional data switch places in CSV file, when the synchronization direction is changed
  • "Type of value has a mismatch with column typeCouldn't store <> in first_name Column. Expected type is BigString" error is encountered while editing the project and changing column selection in the "Object filter" tab
  • The add-in version of ApexSQL Data Diff cannot be checked for SQL Server Management Studio 2008 R2 during the installation
  • Misleading and sufficient information messages are shown in the CLI
  • The application GUI cannot be displayed on screen at all when using multi-monitor setup
  • "Connection to SQL Server failed" error is encountered while generating a synchronization script for Azure V12 database

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2014.04.0049

Date:

March 17, 2015

Enhancements:

  • The application now supports Azure SQL Database V12

Fixes:

  • The application will synchronize all rows for one table, even if only one row is selected for the synchronization
  • All rows for one table become checked, when one row for the selected table is checked and then some other table is checked
  • The "Value can not be set" error is encountered when the comparison key is changed for views and custom keys are set

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2014.03.0047

Date:

January 16, 2015

Enhancements:

  • Databases comparison is up to 270% faster
  • The synchronization option "Script USE for database"
  • The progress bar for synchronization script execution
  • The synchronization wizard's "Recompare after synchronization" option

Fixes:

  • The "No differences were detected. There are no objects to synchronize" error is encountered when comparing objects via CLI and using the /include switch
  • The backup added as the data source is not selected for comparison by default
  • The "The output char buffer is too small to contain the decoded characters, encoding 'Unicode (UTF-8)' fallback 'System.Text.DecoderReplacementFallback'." error is encountered when synchronizing specific databases
  • The SQL Server Management Studio add-in's "Option tab" is missing the "ApexSQL defaults" button
  • The "Synchronization wizard" window is not scalable
  • The "Save as my defaults" button in the "Options" tab do not work as intended
  • Checking/unchecking all rows in the "Data differences" pane do not check/uncheck the table in the main grid
  • The check box column filter in the results grid does not refresh results automatically on changed filtering condition
  • The application will not offer to save the existing unsaved project in the main application window, when the new comparison is initiated from the SQL Server Management Studio add-in
  • When starting the new project, the last used database backup path is not remembered
  • When at least one row is checked in the "Difference details" pane, the table in main grid will not be checked accordingly
  • Missing information that a script is created successfully
  • Missing a warning message that a new folder will be created during the installation

Changes:

  • The add-in options dialog "Defaults" button name is renamed to "ApexSQL defaults"

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2014.02.0044

Date:

September 12, 2014

Fixes:

  • The "Unclosed quotation mark after the character string 'string name'" error is encountered when the execution script is run SQL Server Management Studio
  • The "Community edition" remains in the bottom right corner of the application window after extending the trial period
  • The “Error level code is 0” informational message is shown in the CLI, even when the script is executed with errors
  • The "Unclosed quotation mark after the character string "r§qàø" error is encountered when script is executed in SQL Server Management Studio
  • The "Object reference not set to an instance of an object" error is encountered when exporting the results as CSV file in the CLI
  • Missing the file path information after executing the “/output_type:csv” switch in the CLI
  • The scroll bar in the "Options" tab is not scrolling when using the mouse button
  • The "Value was either too large or too small for a Double" is encountered if the float value is close to range limits
  • Missing the file path information after executing the “/output_type” switch in the CLI
  • Missing the file path information after executing the “/output_format” switch in the CLI
  • The "Main grid" goes over application's ribbon buttons, when resizing the application window from above
  • The “Index was outside the bounds of the array” error is encountered when comparing specific backups
  • The application ignores the object mapping that was saved in the project file during the comparison in the CLI
  • Missing alert during the installation when SQL Server Management Studio is active
  • The application cannot be auto-updated when it's initiated from SQL Server Management Studio
  • Inconsistent behavior for SQL Server authentication password saving between application and SQL Server Management Studio
  • Inconsistent row order between the “Object filter” and “Object mapping” tabs
  • The synchronization script is generated at an unknown location without warning when a text field for script destination folder is left empty
  • Multiple columns cannot be selected in the “Object filter” using the shortcuts “Shift+A” and “Ctrl+A”
  • The "Object reference not set to an instance of an object" error is encountered when closing project dialogs in specific cases
  • Incorrect copyright year in the "About" window
  • The "Professional edition" button, in bottom left corner of the application's window, is not disabled after successful activation and the activation can be run again
  • The "Other" option cannot be enabled under the "Output" options
  • Buttons "Test" and "..." are not functioning for the "Other" option under the "Output" options
  • The "New project" window is not resizable
  • Missing the ApexSQL icon inside SQL Server Management Studio object explorer menu
  • During the synchronization process informational message pops out in upper left corner of the screen
  • The "Object reference not set to an instance of an object" error is encountered on after the comparison process is canceled and changes are made in the "Edit filter…" option
  • The “Ctrl+F1” shortcut will open “Help” in two tabs
  • Single quotes are not scripted correctly
  • The rows in the “Difference details” pane are all automatically checked after the comparison process, but their parent table in the "Result grid" is not

Changes:

  • The colorized “Result grid” feature was deprecated

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2014.01.0042

Date:

June 20, 2014

Enhancements:

  • The application now fully supports SQL Server 2014

Fixes:

  • Incorrect rows are synchronized when different rows are selected for synchronization
  • Community edition throws an error after the "Edition" notice
  • SQL Express 64bit Server databases cannot be compared in the Community edition
  • The application does not create the synchronization script when compare and synchronize databases using the Command Line Interface (CLI)
  • The "Check all" function checks all objects, but do not check columns in tables previously checked manually
  • The "Defaults" button is not working for the "Object types to compare" option in SQL Server Management Studio
  • Missing warning that user should close SQL Server Management Studio and that the application update will fail if SQL Server Management Studio with integrated application's add-in is active during the update to a newer version
  • The application error message is missing details after failed synchronization

Changes:

  • New user interface that follows Metro UI style

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2013.01.0036

Date:

January 24, 2014

Enhancements:

  • The application now supports SQL Azure
  • The 'Check for Row existence with IF NOT EXIST before INSERT' option has been added to the project synchronization options

Fixes:

  • The System.IndexOutOfRangeException error is encountered on data comparison after additional columns are manually mapped via the Object mapping feature
  • Process of generating synchronization script via CLI process terminates irrecoverably in case the entire free space is used
  • Tooltips from the application's resulting grid are shown on of top of other application currently used
  • The application fails to retrieve data from differential backups if all differential backups are stored with the full backup in a single file
  • Reordering table columns in the Edit Custom Comparison Key dialog is impossible in case when table columns are sorted by name or type
  • Size and position of the Mapped Columns dialog is not preserved on dialog closing
  • The application fails to synchronize columns with nvarchar(max) datatype for large BLOB files
  • Scripts created during the evaluation period and saved in the Project dialog via the Additional scripts feature can be used in Standard edition
  • The 'The system cannot find the file specified. [0x00000002]' error message is badly formatted
  • The application is not providing proper feedback on why the transaction log backup cannot be used for comparison
  • If two applications are running at the same time the application started from the SSMS will become unresponsive
  • The application update removes integration from SSMS 2008
  • Sorting results in the 'Difference details pane' resets check boxes
  • The HTML report contains incorrect 'Rows equal' and 'Rows not equal' values
  • The "System.ArgumentException - Unknown TypeCode value" error is encountered when generating synchronization script
  • The CLI command can not generate synchronization script with the export result from a single comparison
  • Identical data is showed as different if specific naming is used in the primary key field
  • The 'Sort by check state' option in the Data Differences panel applies state of the first row to all other rows
  • Column selection in the Unchecked column settings dialog is ignored if the unchecked column is included in default comparison key and the comparison key is changed
  • Column settings in the .axdd project file are ignored when project file is opened or executed
  • Objects selection in the Object filter feature under the Project dialog is lost in case the Refresh button is clicked
  • Views created on tables having non-identity columns as keys cannot be selected for comparison

Changes:

  • The application has been split into three editions - Community, Standard and Professional

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2012.03.0032

Date:

July 26, 2013

Fixes:

  • The application reads data incorrectly from SQL database backups larger than 4Gb
  • The "Object reference not set to an instance of an object" error is encountered when comparing an SQL database backup which contains BLOBs
  • The "Index was outside the bounds of the array" error is encountered when synchronizing databases which contain BLOBs
  • The columns added to SQL tables or SQL views and SQL tables added to a SQL database, are not automatically mapped when comparing the SQL database using a previously saved project

Changes:

  • The add-in menu is now under the "ApexSQL" parent menu

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2012.02.0028

Date:

March 18, 2013

Enhancements:

  • The tooltips for the "Show equal rows" and "Use checksum for large values" comparison settings, located in the "Options" tab of the "Project" dialog, describe those options in more detail now
  • Depending on the compared databases and the comparison settings, the temporary data cache files take up to 100% less disk space

Fixes:

  • The application stops if the process of exporting the comparison results as a CSV report is canceled
  • The results from the previously completed comparison process are displayed when a new comparison has been initiated and canceled prior to completion
  • A canceled comparison cannot be re-run from the "Project" dialog until at least one of the comparison settings has been changed
  • The application doesn't preserve the object mapping settings of a canceled comparison
  • The application doesn't preserve the path where the backup files used in a comparison reside after it has been completed
  • The "Un-check all" context menu command in the "Object filter" tab of the "Project" dialog deselects all rows save for the one in focus
  • The "Cannot create a row of size XXXX which is greater than the allowable maximum row size of YYYY" error is encountered when comparing SQL tables which contain nvarchar and nchar columns
  • Canceling the comparison process results in all of the project's comparison settings being lost
  • Opening an existing project existing while another project is active will discard the active project without prompting the user to save it
  • Data in identical rows cannot be sorted via Main grid's columns that hold information on the objects from the destination data source
  • Identical rows are not shown although the "Show equal rows" option has been selected
  • Clicking the close button or pressing the Escape key doesn't result in a prompt informing the user that the "Synchronization wizard" will be closed
  • Attempting to synchronize databases via the CLI results in an incomplete synchronization script and hence only partially synchronized databases
  • The "Failed to compare two elements in the array" error is encountered when attempting to sort the Main grid's columns that hold information on the objects from the destination data source if the objects in the destination data source contain less data than the corresponding source data source
  • The "Index was outside the bounds of the array" error is encountered when attempting to synchronize data stored in SQL tables residing on SQL Server 2005 which contain BLOBs

Changes:

  • The application has been split into two editions - Standard and Professional

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2012.01.0026

Date:

November 27, 2012

Enhancements:

  • The application is now FIPS compliant
  • Comparison is now up to 300% faster for all data types
  • Synchronization is now faster up to 150% for all object types
  • Loading objects in the "Object filter" tab of the "Project" dialog is now faster up to 200% for backups
  • Free space required for comparison has been decreased by up to 2500%
  • The "Show equal rows" option has been added to the project comparison options
  • The "Use checksum for large values comparison" option has been added to the project comparison options
  • The application now uses improved re-comparison logic. If the project options are changed then only the SQL tables and SQL views affected by these changes are re-compared
  • The application now integrates into SQL Server Management Studio 2005, 2008 and 2012 as an add-in:
    • The "ApexSQL Data Diff" main menu commands available: "ApexSQL Data Diff...", "Support forum", "Help" and "About ApexSQL Data Diff"
    • The "ApexSQL Data Diff" Object Explorer context menu commands are now available: "Set as source database" and "Set as destination database"
    • The "ApexSQL Data Diff" tabbed window is featured to initiate the comparison process after selecting data sources and comparison options

Fixes:

  • The "Cannot create a row of size % which is greater than the allowable maximum row size of 8060" error is encountered when comparing SQL tables with NVARCHAR and NCHAR columns
  • When changing the "Ignore ROWGUID column", "Ignore BLOB column" and "Ignore TIMESTAMP column" data comparison options, each object's data is re-compared instead of the data stored in the objects affected by the said option only
  • Data is not synchronized after executing the synchronization script when synchronizing geography to char
  • The "Cannot call methods on varchar" error is encountered when executing the synchronization script for the VARCHAR(MAX) type
  • The "Process cannot access the file ‘report_data.htm' because it is being used by another process" error is encountered when attempting to overwrite an already open report
  • The "Edit current project settings..." command is available in the context menu even if a project hasn't been opened
  • SQL tables without unique clustered indexes are listed as "Incomparable" with the reason "Only in source" or "No unique" when comparing a database with a backup even though they do exist in both
  • An incorrect error message "Select object(s) to synchronize" is displayed when attempting to synchronize a selected object without selecting any of the data rows it contains
  • The main grid "Object name" column filters "{Empty}" and "{Not empty}" are not working for objects listed as "Incomparable"
  • The "Input string was not in a correct format" error is encountered when comparing databases with DECIMAL data values
  • The "Specified argument was out of the range of valid values" error is encountered when using the "Next difference row" button in the empty "Data differences" pane
  • Selecting a data row in the detail grid doesn't automatically select the object containing that row in the main grid and vice versa
  • Hovering over either "Check all rows" or "Uncheck all rows" buttons in the "Data differences" pane increases the CPU load to 98%
  • The "Specified cast is not valid" error is encountered when comparing a database against compressed backups
  • Tables added to databases after the comparison are not displayed in the main grid following comparison refresh
  • "Could not enable or disable the constraint" script execution error in encountered when synchronizing data in FileTables

Changes:

  • Different names for the "Application options" button in the Home tab and for the Quick access menu "Options" button

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2011.02.0020

Date:

May 18, 2012

Enhancements:

  • SQL Server 2012 databases and backups are now fully supported for comparison and synchronization
  • Natively compressed backups are now supported for comparison
  • SPARSE and FILESTREAM columns can now be extracted and compared from backups
  • Project Defaults dialog height has been increased to display all options by default
  • Application now provides a warning when synchronizing NULL to not NULL columns
  • 'SQL Server 2012 Management Studio' output editor setting has been added to Options form to allow opening of synchronization script in SQL Server 2012 Management Studio

Fixes:

  • REAL values are synchronized with loss of preci sion when synchronization script is executed from SQL Server Management Studio
  • Row filter set on Object filter step of Project wizard is ignored during synchronization
  • Synchronization fails when synchronizing NULL to not NULL columns if any of the source rows contains NULL value
  • "Source backup is not selected" error message is encountered when comparing a database without specified login credentials to a backup
  • Object filtering and mapping settings are not saved when using Save As command before making any changes to the project

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2011.01.0017

Date:

December 14, 2011

Enhancements:

  • SQL Server Denali databases and backups can now be compared and synchronized
  • Application will now run as 64-bit process under 64-bit OS
  • Comparison performance has been improved up to 15% depending on the case
  • Object filtering performance has been improved
  • Additional warnings have been introduced for table and column mapping

Fixes:

  • Both names are shown for differently named mapped objects in the source Object name column on object filter
  • Metadata is unnecessarily reloaded each time object filter is activated
  • Main grid can be detached from the frame but cannot be attached back to it
  • No warning is shown when attempting to map a table without clustered index from a backup
  • Non-existing backup set can be specified in CLI
  • Illegal in the file system characters can be specified in synchronization script name
  • Equally named objects are not auto included in comparison when their columns are mapped manually
  • Checked and excluded object counts are updated improperly in status bar
  • Synchronization wizard can be started with all rows for all selected objects excluded from synchronization
  • 'Checked Only' 'CSV data export' setting can be set independently from parent 'Different' setting
  • Folder selection is not preserved in Project Management dialog
  • Different rows may be incorrectly identified as missing and additional when comparing a SQL Server 2000 database vs a SQL Server 2000 backup
  • Precision is scripted incorrectly into synchronization script for DATETIME2 values
  • Incorrect version is shown in status bar for SQL Server 2008R2 instances
  • System.OverflowException exception is encountered when comparing DECIMAL values from a backup
  • System.IndexOutOfRangeException exception is encountered when checking an object with all rows excluded from synchronization in main grid
  • Tooltips for GEOGRAPHY, GEOMETRY and HIERARCHYID columns unnecessarily show schema beside data type name in difference details grid
  • No warning is generated when attempting to synchronize GEOMETRY columns into GEOGRAPHY ones and vice versa
  • Column order, width and sorting order is not preserved on object filter
  • No warning is shown for corrupt projects but empty synchronization script is generated instead
  • Object filter is sorted by row count vs. object name by default
  • Unicode data stored in columns of non-Unicode text data types is synchronized incorrectly
  • No warning is shown when attempting to map columns with incompatible data types
  • GEOGRAPHY data is scripted incorrectly into synchronization script when synchronizing to a CHAR column
  • 'Synchronize now' output action is unavailable in Synchronization wizard when synchronizing a backup to a database
  • Extended properties get recreated twice for nonclustered indexes when 'Drop not unique indexes' option is ON
  • Comparing a database vs. a backup may result in System.FormatException exception
  • Identical and Different rows may be incorrectly identified as Missing and Additional when the comparison key includes columns of textual data types with values larger than 30 bytes

Changes:

  • /output_type CLI switch vbs argument has been deprecated

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • SPARSE and FILESTREAM columns cannot be extracted and compared from backups

Release:

2010.01.0015

Date:

April 22, 2011

Enhancements:

  • Separate backup sets can now be selected for comparison from Backup data sources
  • New Summary and warnings step has been implemented in Synchronization Wizard
  • View DDL main grid context menu command is now available for Backup data sources
  • New All records grid has been added to Data Differences panel
  • Previous Different Row, Next Different Row, Previous Different Cell and Next Different Cell tool buttons have been added to Data Differences panel toolbar
  • New Office 2007 style interface with ribbon bar, quick access toolbar, and ApexSQL Data Diff button has been introduced
  • New Resources ribbon bar has been introduced for quick access to Help page, Support forum, Training page, FAQs, Knowledge base, Troubleshooting, Contact and Get Updates dialog boxes
  • New standard Project Management dialog has been introduced
  • Project Management dialog now shows recently used projects or projects stored in any folder of choice
  • Projects can be Pinned/Un-Pined to Recent Projects list on Project Management dialog
  • Data sources can be compared directly from Project Management dialog box
  • Synchronization direction is shown directly in Project Management dialog box for selected project
  • Project description can be edited directly from Project Management dialog
  • 'Show on Startup' option has been added to Project Management dialog box
  • Startup Action options group has been added to Options dialog to control Project Management dialog behavior. Available choices are 'Show Project Management dialog', 'Show last opened project' and 'None'
  • Project Defaults can now be defined for newly created projects
  • Project options can now be saved as current user defaults settings
  • Project options can now be reset either to current user or to ApexSQL defaults
  • Each project option has now an associated tooltip with description
  • New tooltip balloons have been added to data source bars of main window Status bar
  • Options dialog has been redesigned with new Office 2007 button bar
  • Application can now be presented in 3 color schemes: Blue, Silver and Black
  • The following new connection options have been implemented for Database data source: 'Execution timeout' and 'Encrypt connection'
  • Object filter Project Settings form tab has been redesigned for improved usability
  • New Object Filter Editor allows to filter objects based on 'Exclude if' or 'Include if' conditions
  • New Object Filter Editor can use the following comparison operators: 'Equal', 'Not Equal', 'Between', 'Not between', 'Contains', 'Not contains', 'Begins with', 'Ends with', 'Any of' and 'None of' and the following logical operators: 'And', 'And not', 'Or' and 'Or not'
  • Row Filter dialog now shows filtered row counts
  • Show Advanced Tabs button in Project Management dialog box displays additional steps (Object filter, Object mapping and Additional scripts)
  • Editor for synchronization script can be selected on Output Options step of Synchronization Wizard
  • Main grid supports 2 predefined grouping types: Group by object type and No grouping
  • New main grid row filter can use the following comparison operators: 'Equal', 'Not Equal', 'Begins With', 'Ends With' and 'Contains' for string columns and 'Equal', 'Not Equal', 'Greater Than', 'Greater Than Or Equal', 'Less Than' and 'Less Than Or Equal' for numeric columns
  • Number of checked objects and number of filtered objects are now displayed in main window Status bar
  • New Comparison Statistics dialog is shown in response to clicking on Checked and Excluded bars of main window Status bar
  • Data cache location has been made an option and is available on Options dialog
  • The following new switches have been added to CLI:
    • /bs1:arg [ /backup_set1 ] : Specifies source backup set GUID
    • /bs2:arg [ /backup_set2 ] : Specifies destination backup set GUID

Fixes:

  • "The XML data type cannot be compared or sorted, except when using the IS NULL operator." error is encountered when executing DELETE statements against tables without natural keys containing XML columns
  • No warning is generated for /sync switch specified for Backup data source in CLI
  • Synchronization script is generated for identical data sources in CLI
  • Application doesn't disable foreign keys in synchronization script generated for Backup data source when 'Disable foreign keys and triggers' option is ON
  • No warning is generated for /comparison_keys switch specified for Backup data source in CLI
  • 'System.Exception' exception is encountered on loading invalid project
  • 'System.OverflowException' exception is encountered when comparing columns of decimal(30, 29) data type
  • 'System.Text.EncoderFallbackException' exception is encountered when comparing character data encrypted by EncryptByPassPhrase function
  • Application detects false differences in character data without trailing spaces when 'Ignore Trailing Spaces' option is OFF
  • Application detects identical rows in tables larger than 150,000 rows incorrectly
  • 'Ignore Trailing Spaces' option doesn't get applied to columns used in selected comparison key
  • Sql_variant column data gets converted to character in generated synchronization scripts
  • 'System.IO.IOException' exception is encountered on comparison in case there's not enough space for data cache on the disk
  • Columns of character data types get sorted incorrectly in Data Differences panel
  • Empty synchronization script is generated with /treat_list_as_exclude switch specified in CLI
  • Only tables get compared with /object_types switch omitted in CLI
  • Synchronization Wizard is opened with no differences selected in Data Differences panel

Changes:

  • The following options have been moved to Project Settings form from Synchronization Wizard:
    • Transactions
    • Batching
    • Database configuration
    • Optional script elements
    • Additional scripts
  • Object mapping has been split off from Object filter into a separate Project Settings form tab
  • Select and Group columns capabilities have been removed from main grid
  • Description tab has been removed from Project Settings form
  • Show System Databases option has been removed from Data sources tab and system databases are now always shown in database pick lists
  • Application assemblies are now signed using ApexSQL private key and can be manually verified for validity

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups
  • Reading of FILESTREAM and SPARSE columns from Backup data source is currently unsupported

Release:

2008.04.0012

Date:

October 08, 2009

Enhancements:

  • Large values (of data types like image, text, nvarchar(max), etc.) are now synchronized in parts

Fixes:

  • Backups are created without WITH COPY_ONLY option in synchronization scripts
  • "System.ApplicationException" exception is thrown on Project Settings form's Object Filter tab selection
  • Incorrect message is shown on comparison with "clr enabled" SQL Server option disabled
  • Non-mapped objects are shown as mapped after selection profile import
  • It's impossible to configure and save projects with data sources not set
  • New objects aren't auto mapped on refresh
  • System.OutOfMemory exception is thrown on large values (>1GB) comparison or synchronization

Release:

2008.03.0010

Date:

July 27, 2009

Fixes:

  • Object filter step of Project Settings wizard's overall performance is very slow for data sources accessed over VPN
  • TruncationException is thrown on geometry data type comparison
  • Incorrect icons are used for server and database in Synchronization Wizard status bar
  • Icons aren't properly aligned in Main Toolbar
  • Success message is incorrectly shown for CSV exports when there's no data to export
  • /b1 switch doesn't take precedence over /pf1 switch in CLI
  • Prohibited implicit conversion is used for varchar, (var)binary and xml data types
  • Explicit conversion is used for sql_variant, xml and varbinary(max) datatypes even if implicit conversion suffices
  • CLI switch shortcuts /io, /do and /coo aren't recognized when used together with /data_html_report_options or /csv_report_options switches
  • OutOfMemory exception is thrown when synchronizing large (>1GB) databases
  • Custom table mappings aren't saved in projects
  • Object DDLs are parsed with syntax errors in View DDL form in case SQL Server authentication is used
  • NullReference exception is thrown on mapping tables from differential backups
  • Object check states aren't reset after synchronization
  • CryptographicException is thrown on connecting to server by IP address if Store Encrypted Password option is off
  • Application always uses batches in CLI even if /batch_every_n_rows switch isn't specified
  • "Unexpected error: Year, Month, and Day parameters describe an un-representable DataTime" error is thrown on backup comparison if backup date format is different from local one
  • Incomparable objects are always shown with empty Reason column

Changes:

  • Prompt to save Project Changes on options group was removed from Options form
  • Default synchronization script file name was changed from sync_script.sql to Synchronize.sql
  • Compared object comparison results tab was renamed to Different
  • A few labels, tooltips, and captions throughout application were updated to better correspond with ApexSQL's internal standards
  • HTML Report Options form was unified with CSV Data Export Options form
  • Now when generated script can't be opened with internal editor (when it's >3MB in size) user is offered to select another editor in addition to saving script to file

Known limitations:

  • Data sources containing SQL tables without a unique clustered index cannot be compared against database backups

Release:

2008.02.0009

Date:

January 21, 2009

Fixes:

  • Bad verbose output when using Command line for backup data sources
  • Using Regular expression pattern for comparison that doesn't match any table worked as all possible tables were matched
  • Project filtering will be disabled if destination database is changed
  • Money fields are read incorrectly from backups
  • Main toolbar name was "Main Toolbar" instead of "Standard"
  • Regular expression filter values will be corrupted after comparison in some cases
  • In Synchronization Wizard there will be no advanced options state saved after wizard reopening
  • In Synchronization Wizard Save As button won't update Project Name
  • Main grid tabs Compared, Identical, and Incomparable not having number of elements
  • After Compare button is pressed data source information is lost in some cases
  • Ignore options doesn't affect comparison

Changes:

  • Offline help file is no longer provided and application will now directly access online help from the default system browser

Known limitations:

  • Backup data source: only tables with unique clustered index can be compared. Incomparable tables can be viewed in Incomparable Objects form
  • Backup data source: only unique clustered index can be used as comparison key
  • Backup data source: comparison and synchronization of views are not supported

Release:

2008.01.0006

Date:

November 25, 2008

Note:

Effective with version 2008.01, ApexSQL Diff was split into two products: ApexSQL Diff, for structure comparison and ApexSQL Data Diff for data comparison. These release notes cover all previous versions of the pre-split product, ApexSQL Diff, and new versions of ApexSQL Data Diff

Enhancements:

  • Support for backup files as data source for comparison
  • New /b1(/b2) CLI switch to specify database backup file as data source for comparison
  • Support for new SQL 2008 data types (date, datetime2, datetimeoffset, geography, geometry, hierarchyid, time)
  • Ability to resize Row Filter window
  • Ability to sort mapped tables editor by schema/name
  • Ability to resize Columns Editor window
  • Ability to copy cell content of the result grid to clipboard
  • Improved visual representation of different columns
  • New buttons "<< Clone" and "<< Reverse >>" for data sources in Project Settings
  • Added "Reset Page Settings to Last Saved Values" option in Project Settings
  • Added "Default Directory" and "Default File Name" options for synchronization script to "Options" form
  • New "Properties" tab that allows changing of project name and description
  • Ability to customize colors for Source and Destination columns in main grid
  • Ability to customize the representation of data comparison results with colors and cell patterns (Differences in Data panel)

Fixes:

  • Indexes for comparison key are not detected properly for backup data source
  • Tables without unique clustered index are not excluded from comparison for backup data source
  • Reading data for backup data source may result in error
  • Options that are not supported for backup data source are displayed in Project Settings
  • Error encountered when generating synchronization script for backup data source
  • CLI is not updated for backup data source
  • Source columns of ignored datatypes are incorrectly selected for comparison

Changes:

  • Comparison options do not affect columns check state but may exclude the columns from the comparison
  • 3 tabs with grids in Main form to display Compared, Identical, Incomparable objects (tables/views)
  • Changed how BLOB/CLOB fields are displayed in the data details grid
  • Splitting row count column of the Data Tables/Views wizard tab into 2 columns (for source and destination row counts)
  • Replaced Comparison Wizard with new Project Settings
  • Synchronization Wizard steps reduced to 3 main steps
  • Added status bar to Synchronization Wizard
  • Added "Edit Current Project Settings..." menu item to context menu of objects grid
  • All grid related tool bar buttons in Main window are moved to a separate tool bar (hidden by default)
  • Sorting order for Status column in objects grid (#1 Different, #2 Additional, #3 Missing, #4 Identical)
  • Changed default grouping for object grid to Status column
  • Removed Records To Compare options
  • Removed "Treat Object Selections As Exclude" option from Synchronization Wizard

Known limitations:

  • Backup data source: only tables with unique clustered index can be compared. Incomparable tables can be viewed in Incomparable Objects form
  • Backup data source: only unique clustered index can be used as comparison key
  • Backup data source: comparison and synchronization of views are not supported