Re: popstgresql query

Lists: pgsql-admin
From: "Arun Gananathan" <arun(at)gananathan(dot)fslife(dot)co(dot)uk>
To: <pgsql-admin(at)postgresql(dot)org>
Subject: Re: popstgresql query
Date: 2004-01-19 18:40:21
Message-ID: 000801c3debb$b24c47a0$83104f51@arun
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-admin

Hi,
Could anyone please let me know how to perform the following in postgresql
I have two tables called P , Q with the same attributes and data tpyes. I want to insert a record ( for example called A) into table P, when deleting the same record( for example called A which is already in the other table) from the other table Q.
Thank you

arun


From: "scott(dot)marlowe" <scott(dot)marlowe(at)ihs(dot)com>
To: Arun Gananathan <arun(at)gananathan(dot)fslife(dot)co(dot)uk>
Cc: <pgsql-admin(at)postgresql(dot)org>
Subject: Re: popstgresql query
Date: 2004-01-26 17:39:46
Message-ID: Pine.LNX.4.33.0401261038170.16241-100000@css120.ihs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-admin

On Mon, 19 Jan 2004, Arun Gananathan wrote:

> Hi,
> Could anyone please let me know how to perform the following in
> postgresql
> I have two tables called P , Q with the same attributes and data
> tpyes. I want to insert a record ( for example called A) into table P,
> when deleting the same record( for example called A which is already in
> the other table) from the other table Q.

Pretty straight ahead. You can either use a fancy trigger setup, or just
do it in a transaction to ensure integrity:

begin;
insert into P (select * from Q where recid='A';
delete from Q where recid='A';
commit;

If the insert fails, the delete won't happen either.

That close to what you want?