On Thu, Dec 11, 2008 at 5:30 AM, Thom Brown <thombrown@gmail.com> wrote:
> What do you folk think is the best way to manage deployments to databases?
> This would include things like table/view/function creations/changes and
> possibly static data changes.
The easiest way I've found to do it is to create a changetrack table
in pgsql, and then make each update use that. You can get fancy if
you want, or just keep it simple. For instance:
create table chtrack (id int primary key, changename text, changedesc text);
Then in a file you can have:
begin;
insert into chtrack (id, changename, changedesc) Values (10,'schema
create','This change creates the initial db schema');
create table
etc...
commit;
If any of the script fails, the whole thing does and your db doesn't
change. Then you can create your new updates in a similar manner.