Any application that uses a database need a solution for a common problem: Schema updates. This means, the database needs to be changed in order to support the newest features of the software.
The experience I have so far with other applications doing schema updates is not very good. Usually it works if the SQL server is plain vanilla but as soon as anything has been changed, it all breaks down.
Either the schema update simply stops with a cryptic error message or it fails "silently" so when you start the application you get all sorts of errors. And it's always a lot of fun to fix such errors, just because something wasn't thinking enough.
In Xteq5, the schema updates are done with the "Xteq5 Database Tool". As we use a lot of very specific SQL Server features (Windows authentication, Snapshot Isolation, Change Tracking etc.) it includes a lot of checks to make sure the database is in a useable state. When something isn't right, it will be fixed automatically.
Any schema update that is performs is done in a transaction. So either this schema version is successfully updated, or nothing will be changed at all.
Finally, it will log all SQL statements so when there is an error you'll know exactly what has gone wrong.
No comments:
Post a Comment