I often run into the following problem.
I work on some changes to a project that require new tables or columns in the database. I make the database modifications and
There's a PHP5 "database migration framework" called Ruckusing. I haven't used it, but the examples show the idea, if you use the language to create the database as and when needed, you only have to track source files.