Mostly we change existing database tables, stored procedures, functions or parameters in tables for software upgrades/bugfixes. And when it’s time to deploy our changes to another environment like production or preproduction, some parts of our db changes are forgotten.
In our company, some developers use a database difference analysis application to find out the differences between test and production environment. Some developers store t-sql of every change they made on db, like me.
I wonder what are you doing to deploy db changes to production environment. Why you choose that way ? Or what must be done ?
Thanks for the replies !
We have our db under Source Control. Any changes are tracked that way. Anything else would be a nightmare.
Jeff has an article on it too – http://blog.codinghorror.com/get-your-database-under-version-control/
SQL Server has the Generate and Publish Scripts Wizard, which can be really useful if you want to put an existing database into source control.