A Review of SQL Server Database Comparison Tools
Are the premium tools right for you?
Are the "value for money" tools right for you?
Review: Premium Comparison Tools
Review: "Value For Money" Comparison Tools
About this Review
Looking for a tool that compares SQL Server databases and reports the differences?
You may have downloaded a freeware application that hung or crashed on any database bigger than a few MB. You're reading this review because you don't have hours to spend searching for quality software that fits your needs.
Salmon Training has downloaded and used 14 different SQL Server comparison tools, and we present our favorite database applications here. All tools in this review do what they promise, perform well with larger databases, and come with good documentation and support.
The lowest priced tool is under $50 (with a special discount) and the most expensive is over $300. All are a good choice depending on the complexity of features that you need for your environment.
We have divided the database tools into two categories: "Premium" and "Value For Money". Depending on your role and your SQL Server environment, you'll find one category of tools more suitable than another.
Are the Premium Tools right for you?
Alongside database comparison, the premium tools also offer synchronization through the generation of scripts which alter schemas or data. Some of the tools have source control functions.
You will benefit most from the Premium Tools if some or all of the following four profiles apply to your current role:
- You are a full-time SQL Server DBA who maintains a large number of databases on many different servers.
- You support multiple developer teams with many development databases.
- You tend to deploy database changes on at least a weekly basis.
- You work in the I.T. department of a large company that provides a good budget for internal software purchases.
In these circumstances where it's difficult for a DBA to keep track of many changes, the automation of change migration can be very helpful. However, because it's so important, we highlight here the warning we make in the section on premium tools: "double-check all generated scripts and run a schema comparison after a go-live. Don't trust the generated scripts to be completely correct!".
Are the "Value for Money" Tools right for you?
Tools in the "Value for Money" category do an excellent job of comparing schemas (tables, stored procedures and other objects) across different databases and different servers. They don't offer the complex features of the premium category such as database synchronization or source control.
You will benefit most from the "Value for Money" Tools if either of the following two profiles apply to your current role:
The Developer/DBA
You have the dual role of Developer and DBA. You code stored procedures and also maintain one or a small number of databases. You don't make daily changes to the live database. You deploy changes "manually" using care and attention – but there are times that you get burned by missing procedures or code changes that get left behind.Spending hundreds of $ on a tool you'll use maybe once every few weeks can't be justified to management (or your own pocket). When you're trouble-shooting or need to make a fast fix to the live system, you want a simple but powerful tool you can fire up and run a live/dev comparison in a few clicks – without reading the manual.
The Developer
You are an application developer working primarily with ASP.NET or Java or another application language. You also develop and maintain stored procedures when required. You work with other developers who may also be changing stored procedures. You've already had a few heart-stopping moments when the wrong code went live – it's hard to keep track on what's in the development database when you don't spend every day working with stored procedures.
You know you can ask the DBA to run comparisons between the Test and Development database – or between your development database and the one that your colleague is using. But the DBA is always busy; there are live problems to sort out…if only you had a cost-effective tool that would run the same check that the DBA runs.
Review: Premium Category
Tools in the "Premium" category don't just compare database schemas, they also generate migration scripts to synchronize databases. Some offer deployment through wizard-type features, and some offer source control.
The additional complexity has two major consequences. You'll need to spend a bit of time learning the interface and features, but if you're using the tool on a daily basis – this will be time well spent. The second consequence is a higher price tag.
I have one major warning for fellow DBAs when using any of these tools for change migration (not just comparison): double-check all generated scripts and run a schema comparison after a go-live. Don't trust the generated scripts to be completely correct! If you believe it's safer to "roll your own" migration scripts, then look to the pure comparison tools.
SQL Compare and SQL Data Compare (from Red Gate)
Red Gate offers two different products for schema and data comparison, unlike most of the other vendors who include both functions in the same product. The schema comparison tool will also generate migration scripts.
A single user license for SQL Compare is $295 *, but this price doesn't include a command-line interface - add another $200 for a feature that is standard from most of the other vendors.
If you don't need a command-line interface (useful for scheduling daily comparison checks) but you do want to be able to compare data, then bundling the Compare and Data Compare standard tools is $495*.
AdeptSQL Diff runs comparisons on both schema (tables, procedures etc) and data. This is the fastest tool that we tested using a comparison of two large databases on different servers. The user interface has a lot of pop-up windows which I found difficult to juggle, but frequent usage would make this easier.
The comparison tool worked flawlessly, but the synchronization tool is less powerful than other offerings. The DBA is left to do a fair amount of editing of synchronization scripts.
A single user license for schema only comparison is $240*, while the inclusion of data comparison is $320*.
ApexSQL Diff is a schema and data comparison tool, that offers complex drilldowns into differences between databases. It's also a synchronization tool that generates scripts for migrating changes to database structures.
This tool packs in a lot of features with a lot of "buttons", and takes a bit of time to explore fully. But even the complex features are well presented through a user-friendly design. The tool compares very favorably with Red Gate's products but at a significantly lower price.
The single user license is $299*.
SQL Delta is a schema and data comparison and synchronization tool. The tool isn't as user-friendly as some of the others, and more importantly the release isn't as stable as we'd expect. However, it has less problems than tools we've excluded from this report as being unusable, and the SQL Delta support team address quickly any issues.
A single user license is $265*.
Review: "Value for Money" Category
The "Value for Money" tools are priced significantly lower than the "Premium Category" because they concentrate on pure database comparison. The tools in this review both offer schema comparison by comparing all database objects (e.g. tables, stored procedures, triggers, functions etc) between databases on the same or multiple servers.
One of the tools in this section also compares data betwen databases. Data comparison is offered by all the "premium" tools, so we were very impressed by its inclusion in a lower priced application.
After differences are reported, the "value for money" tools do not offer synchronization i.e. writing changes to a database. There are many developers and DBAs who simply do not need synchronization features.
Tools in the "Value for Money" category must meet three criteria:
- Effective comparisons of small and large databases
- Priced below $150 to fit the budgets of individuals and small businesses
- Good performance on large databases, and run without crashing or hanging
We excluded a number of free tools which did not complete all our comparison tests.
The following "Value for Money" tools are listed in descending order of price.
SQL Effects is a schema-only comparison tool that compares two different databases and displays the differences. The graphical tool is well designed and easy to use, using two side-by-side "explorer" type views of the databases.
This is an excellent tool for schema comparison. Note that unlike all other tools in this review, it doesn't offer data comparisons which is why we give the "star pick" to another tool in "Value for Money" section.
A single-use license is $139*.
SQL Server Comparison Tool (from AlfaAlfa Software)
This tool does exactly what it's name claims: it compares both schema and data between two databases. A full comparison of all database objects can be performed, or the user can zero in on one type of object such as all stored procedures. The data comparisons are also powerful, allowing finely tuned checks by indexes or primary keys.
When we first used this tool we were struck by the clean and uncluttered interface. It doesn't have the multiple windows and multitude of buttons that appear in some of the premium tools. We think this tool is all the better for it's simplicity. But don't be fooled - the tool offers many complex features such as command-line automation.
A single-use license is $99*.
Salmon Training makes SQL Server Comparison Tool "Star Pick"
* All prices are quoted from the vendor's web site as of time of writing. All prices are subject to change. This review does not constitute a binding offer of price. Interested buyers should check the vendor's web sites for current pricing.
Submitted: 2 May 2007
Author: Margaret Cruise O'Brien, Salmon Training
(c) Salmon Training 2007
