Re: CREATE TABLE with REFERENCE

From: Stephan Szabo <sszabo(at)megazone(dot)bigpanda(dot)com>
To: Rajesh Kumar Mallah <mallah(at)trade-india(dot)com>
Cc: "kay-uwe(dot)genz" <kug1977(at)web(dot)de>, PostgreSQL General <pgsql-general(at)postgresql(dot)org>
Subject: Re: CREATE TABLE with REFERENCE
Date: 2003-07-28 21:00:59
Message-ID: 20030728135904.M56111-100000@megazone.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, 29 Jul 2003, Rajesh Kumar Mallah wrote:

> Stephan Szabo wrote:
>
> >On Mon, 28 Jul 2003, kay-uwe.genz wrote:
>
> >>Second question. Is there a method of INSERT INTO both tables VALUES
> >>without group them in the same Transaction?
> >
> >You mean insert a row in each table that acts as the pk row for the other?
> >
> >You could fake it by inserting one in with a NULL for the fk column
> >(unless they're both NOT NULL), inserting the other and then updating the
> >first. Otherwise I think you need to be running in a single transaction
> >(although they could be grouped inside a function or as a trigger for
> >example).
> >
>
> But isnt' foreign key constraints deferrable inside transactions?
> i vaugely remember doing it . istn' it the best way of doing it?
> [ if at all it works :-) ]

Yes, that'd be the best way (the constraint must be deferrable in that
case and you often want it to be initially deferred for cyclic
constraints). The question seemed to specifically ask if there was a way
without grouping them into a transaction.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message scott.marlowe 2003-07-28 21:03:39 Re: Clone a database to other machine
Previous Message Francisco J Reyes 2003-07-28 20:59:07 Re: comparing database schema's