Search Postgresql Archives

Re: adjusting primary key

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thenx a lot. That does it!!


-R

On Tue, 2006-10-10 at 16:23 +0200, Matthias.Pitzl@xxxxxx wrote:
> You have to create t2 as following:
> CREATE TABLE t2 (id int, grp int references t1(id) ON UPDATE CASCADE ON
> DELETE CASCADE, info text);
> 
> Through the cascade commands Postgresql will check the t2 table on rows
> which have to be deleted or updated according to your changes in t1.
> 
> For changing the existing table take a look at the ALTER TABLE commands.
> 
> Greetings,
> Matthias
> 
> > -----Original Message-----
> > From: pgsql-general-owner@xxxxxxxxxxxxxx 
> > [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Rafal Pietrak
> > Sent: Tuesday, October 10, 2006 3:59 PM
> > To: pgsql-general@xxxxxxxxxxxxxx
> > Subject: [GENERAL] adjusting primary key
> > 
> > 
> > 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
> > 
> > ---------------------------(end of 
> > broadcast)---------------------------
> > TIP 1: if posting/reading through Usenet, please send an appropriate
> >        subscribe-nomail command to majordomo@xxxxxxxxxxxxxx 
> > so that your
> >        message can get through to the mailing list cleanly
> > 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 9: In versions below 8.0, the planner will ignore your desire to
>        choose an index scan if your joining column's datatypes do not
>        match
-- 
-R


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux