Does anybody learn about a great tool that really help maintaining the database of the application ?

I am focusing on a credit card applicatoin which utilizes a database (Microsoft Sql Server).

Whenever a development requires to alter something within the database (e.g., structure, data migration...), we produce a script (Transact-SQL script) and add it into our revision control tool (subversion - that tool also consists of our code). Each script must give a line inside a log table to help keep a trace of all of the scripts which have been went right into a database.

To be able to develop a database for the application, one should run all scripts purchased by their creation date.

I am not necessarily pleased with this method particularly since it make application migration a little hard. To use a latest version from the application somewhere, e.g., migrate from version 1.3 to two.1, we should get all of the scripts between both of these versions. Then run them and be sure that things are completed in a transaction...

Without a doubt we're able to built home-made tools to assist however i question if some tools already is available to achieve that type of job.

Red-colored Gate is loaded with lots of tools for SQL Server like http://www.red-gate.com/products/sql-development/sql-source-control/

SQL Server Management Studio performs this In my opinion. It'll auto-create the changes scripts too.

ive used this also it helps alot when trying to puzzle out what changes are necessary

http://www.codertools.com/SchemaCompare.aspx