Click here to monitor SSC

James Moore

Divisional Manager for SQL Tools - Red Gate Software

SQL Data Compare Version 5 Beta

Published Monday, February 27, 2006 4:52 PM

[Edit] ***** The beta has now been released. Please visit http://www.red-gate.com/messageboard/viewforum.php?f=35 and sign up to get download instructions ******** [/Edit]

Next week we will begin to roll out the beta for SQL Bundle 5 – as long as no show stopping bugs turn up in the next few days. In light of this I thought I would spend a little time and write about the major changes to the part of the bundle I have been working on – SQL Data Compare 5.0.


This is the final stage of a long running project on the usability aspects of our products. The outcome is a major redesign of the UI for both SQL Compare and SQL Data Compare. We hope you’ll like them.


In addition to this Richard (Mitchell) has been hard at work on the SQL Data Compare 5.0 engine allowing it to deal with remapping, custom comparison keys, better handling of servers with different collations and a more flexible type of comparison system. I hope you will agree when you see the new engine in action that he’s done an excellent job.


I’ve been told I’m allowed to give you a sneak preview of the beta so let’s have a look at what you can expect.

When you first open the product up you will see our new Comparison Projects screen. This lists all of the recent comparisons you have performed, remembering options (which are now per project rather than application wide), any selections you have made, and comparison keys you have set up and any remapping you have performed.

 
You can also add comments to each project, allowing you to organise your comparisons in an easier and more natural way. 

Let’s go through the steps of creating a new project and have a look at the new features we have added since version 4.0.

The project configuration wizard has changed but we still have the familiar select databases control. We have done quite a lot of work on the SQL Server discovery so nearly all SQL Server instances on the local network should show up.


The “Select tables to include/exclude” section has been extended to allow you to set custom comparison keys. One much requested feature of this upgrade is that there is no longer the requirement to have a primary key or index set on your tables and views. 

And even if a primary key or index does exist you can override it. We have also added functionality which allows you to compare only parts of tables, by providing a where clause. In my example database I know that the first 100,000 records of [dbo].[BigAndRandom] are identical so I want to filter these out to save time and disk space – I just right click the table and select “Edit Where Clause” and off I go!

The next tab allows you to remap tables against one another. In my example database I have the table [dbo].[a] and [dbo].[arename] which by default don’t map. I can now use the UI to manually map these tables to one another:


First I select them then I hit map and the engine will now compare these two objects – once again, if I need to, I can set up a comparison key for them:

 
As well as supporting table-level mappings you can also remap roles/schemas/owners and individual columns within tables. You get the flexibility to work exactly the way you feel most comfortable.

The main results page has also undergone a massive overhaul. We have added an interactive help bar to give you hints as you work your way around the application.

The title bar at the top of the screen allows you to see easily which databases you are working on. The grid below is then grouped into objects with differences, identical objects, objects which couldn’t be compared (either due to being previously unmapped or not having a comparison key set) and objects which we could have compared but you’ve chosen not to include in the comparison.



If we expand the top group to see the objects with differences then we are presented with a list of names and numbers:



Here we can see all of the objects in our database which have been compared and found to be different. Starting from the left, the first column tells us the type of the objects being compared, the second column tells us the total number of different records between the two databases. The third, fourth, eighth and ninth columns tell us the name and owner of the object in each database with the middle three columns giving us a break down of where the differences occur: records which exist only on the left; records in both but differ; or records that are only on the right. The final column tells us the number of identical records in the database.

We can select to include and exclude all insert/update/delete statements. If we need fine grained control over which records are migrated we can use the data viewer. Click on any row in the grid and you can explore the data within that table:



There is no arbitrary limit on the number of records which can be compared and displayed: in this example here the BigAndRandom table contains 11 columns with 500,000 different records. As you can see above I’ve filtered out the first 100,000 records in this case and the comparison for the whole database took a little under 25 seconds. That’s more records than most competing products can deal with and several magnitudes faster than any of our competitors. And that’s just for SQL Server 2000. As far as we’re aware, when it comes to SQL Server 2005 support, there are no products accept ours out there.

So taking a closer look, our data viewer contains 5 tabs: the first allows you to see all records in the table; the other 4 are designed so you can see only the part of the table you are interested in. You can use the checkboxes in the first column to include and exclude individual records that you are intending to migrate. This viewer now supports both sorting and searching through your data.

Finally let’s have a look at the synchronization wizard. In the new UI you’re presented with an unmistakeably clear indication of the direction of synchronization. Hopefully this will mean synchronization is not as stressful an operation as it used to be!

The direction can be changed via the menus on the main form or by double clicking on the big arrows. The main arrow then changes colour to green to add an extra level of assurance that you’re happy about the direction of the synchronization.

Next you are presented with a summary of what the script will do. Don’t worry, you can still access the script. Just hit the View SQL Script button and all will be revealed.

Finally you have the option to run your script – saving a backup copy – or to launch it in SQL Query Analyser/Management Studio or any other tool of your choice.

 

So if you haven’t tried using Red Gate SQL Bundle before or an old hat then hopefully there are enough reasons for you to download the beta and give it a try.

If you are interested in joining the beta program, which should launch in the next week or so, then please email me james.moore@red-gate.com with your name, email address and company name and I will pass your name on to our beta co-ordinator – remember you still have time to have an effect on how the most comprehensive schema and data comparison tools on the market develop.

by James

Comments

 

Steve Hill said:

James,

Can't wait to get my hands on it. I'm currently evaluating one of your competitors' products and it's struggling with larger databases (>100,000 records).

- Steve
February 27, 2006 5:34 PM
 

Thomas Williams said:

Hi James, we use an older version of the SQL Compare bundle and it's indispensable to our development. Looking forward to trying out the new tools!

Thomas
February 28, 2006 12:20 AM
 

Thomas Williams said:

There was a question posted on the AUS-DOTNET mailing list a while back asking how people keep their...
February 28, 2006 1:57 AM
New Comments to this post are disabled
<February 2006>
SuMoTuWeThFrSa
2930311234
567891011
12131415161718
19202122232425
2627281234
567891011
How to Kill a Company in One Step or Save it in Three
 The majority of companies that suffer a major data loss subsequently go out of business. Wesley David... Read more...

Migrating from OCS 2007 R2 to Lync: Part 4
 Having migrated the rest of our users and legacy resources across and started getting ready to... Read more...

Automated Script-generation with Powershell and SMO
 In the first of a series of articles on automating the process of building, modifying and copying SQL... Read more...

Seth Godin: Big in the IT Business
 Seth Godin has transformed our understanding of marketing in IT. He invented the concept of 'permission... Read more...

Using SQL Test Database Unit Testing with TeamCity Continuous Integration
 With database applications, the process of test and integration can be frustratingly slow because so... Read more...