adjusting primary key

From: Rafal Pietrak <rafal(at)zorro(dot)isa-geek(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: adjusting primary key
Date: 2006-10-10 13:59:24
Message-ID: 1160488765.4482.120.camel@zorro.isa-geek.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi All,

I have two tables:
CREATE TABLE t1 (id int not null unique, info text);
CREATE TABLE t2 (id int, grp int references t1(id), info text);

Now, at certain point (both tables populated with tousends of records,
and continuesly referenced by users), I need to adjust the value of an
ID field of table T1.

How can I do that? On the life system?

Obvious solution like:
UPDATE t1 SET id=239840 where id=9489;
or in fact:
UPDATE t1 SET id=id+10000 where id<1000;
wouldn't work, regretably.

Naturally I need to have column t2(grp) adjusted accordingly - within a
single transaction.

Asking this, because currently I've learned, that I can adjust the
structure of my database (add/remove columns at will, reneme those,
etc.), but I'm really stuck with 'looking so simple' task.

Today I dump the database and perl-edit whatever's necesary and restore
the database. But that's not a solution for life system.

Is there a way to get this done? life/on-line?
--
-R

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Jim C. Nasby 2006-10-10 14:15:52 Re: [PERFORM] Postgre 8.0 Installation - Issues
Previous Message Stanislaw Tristan 2006-10-10 12:56:01 List of supported 64bit OS