The main thing is I changed a bunch of date types to timestamp type. Is
there a simple way to change the type on such fields ?
Some fields got renamed and the type changed.
It sounds like doing a copy|template of db1 as db2 and then applying the new
changes as a script that will probably work. The contraints are easy to
migrate once I have the whole structure in place.
Thanks a lot to all for replying to my post that quickly. Keep them coming
if you have more ideas
Regards,
Constantin
http://www.goodstockimages.com
From: Reece Hart <[EMAIL PROTECTED]>
To: MC Moisei <[EMAIL PROTECTED]>
CC: pgsql-general <pgsql-general@postgresql.org>
Subject: Re: [GENERAL] Mapping/DB Migration tool
Date: Tue, 25 Jul 2006 14:49:34 -0700
On Tue, 2006-07-25 at 13:59 -0500, MC Moisei wrote:
> I'm looking to migrate psql db1 to a psql db2 that has a different
> structure
> even though 70% would be the same.
Depending on how much the structure changes (as opposed to more trivial
things like column names), you might consider whether you could actually
use the database itself to do this.
For some kinds of changes, and especially those that make destructive
in-place changes that might require debugging, I've written views which
generate the SQL statements to execute. I then do something like:
$ psql -Atc 'select sql from sql_changes' | psql -Xa
This works particularly well when the changes can be computed in some
way from the database, such as creating indexes for unindexed PKs
(postgresql doesn't require indexes on PKs).
You'd probably want to do this by making copies of the original database
as a template ('create database db2 template db1') or createdb -T .
-Reece
--
Reece Hart, http://harts.net/reece/, GPG:0x25EC91A0
---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings