Are circular REFERENCES possible ?

From: Denis Bucher <dbucher(at)niftycom(dot)com>
To: PGSQL-SQL <pgsql-sql(at)postgresql(dot)org>
Subject: Are circular REFERENCES possible ?
Date: 2001-08-07 09:54:52
Message-ID: 5.1.0.14.0.20010807114609.00a18490@mail.niftycom.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql


Hello !

I have a case where I wanted to do circular REFERENCES, is this
impossible ?

Just an example where it would be useful :

We deliver to the *shops* of our *customers*.
We have therefore two tables :
- customers (enterprise, financial information, and so on...)
- shop (with a name, street, phone number, name of manager)

Now, each shop REFERENCES a customer so that we know
to which customer belongs a shop.

AND, each customer has a DEFAULT shop for deliveries, i.e. most
customers only have one shop, or a main shop and many small ones.
Therefore a customer should REFERENCES the 'main' or 'default' shop.

Which leads to :

CREATE TABLE shops ( id_shop SERIAL PRIMARY KEY, id_cust integer REFERENCES
customers, .......)
CREATE TABLE customers ( id_cust SERIAL PRIMARY KEY, id_defaultshop integer
REFERENCES shops, .......)

But this doesn't work ! Postgres complains like "ERROR: Relation
'customers' does not exist"
when creating 'shops'.

Someone told me I should create a third table, ok, but in this case I loose
the total
control about my logic... Do you have a suggestion ?

Thanks a lot in advance !

Denis

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message William Courtier 2001-08-07 10:09:59 Re: Are circular REFERENCES possible ?
Previous Message Grigoriy G. Vovk 2001-08-07 08:13:55 RE: Delete coloumn