Thursday, March 22, 2012

xSQL Builder – the tool for software publishers

If you publish software that uses SQL Server on the backend then you are familiar with the pain of upgrading your clients from one version of your software to another. Some of the most common challenges you face include:
  • The customers don't know and they don’t want to know anything about SQL Server or t-sql so sending them a set of scripts to execute on the target server is not going to help;
  • Different customers may be on different versions of your software so you need to provide multiple upgrade paths;
  • You may have customized your solution for certain clients so the "standard" upgrade won't work for those cases;
  • You do not have direct access to the customers' databases;
  • You have hundreds of customers you need to distribute your software to.
Those were the challenges we set out to tackle when we decided to build the xSQL Builder. Here is how xSQL Builder works:
  1. A simple wizard guides you through a few steps that lead to the creation of an executable package that contains all the necessary information required to upgrade your customers’ databases. 
  2. When the customers executes the package the following happens:
    1. If applicable, a set of pre-synchronization scripts is executed against the target database;
    2. The schema of the target database is compared with the schema of the master database which has been embedded in the executable package;
    3. Synchronization script is generated and executed against the target;
    4. If applicable, a set of post-synchronization scripts  is executed against the target;
    5. A detailed log is emailed back to you so that you know exactly what happened at the customer's site.
The beauty of this is that the deployment package "does not care" what version of your database the customer is on.
Of course the wizard is quick and easy but what if you need to tweak something that the wizard does not provide for? We thought of that too – xSQL Builder comes with a set of customizable C# templates (C# classes) that contain the compare and synchronization code that runs on the client machine. xSQL Builder ships with a VS.NET 2005 C# project that you can run or modify as needed.
Download now and see for yourself what you have been missing all this time!


Post a Comment