Constraint on 2 column possible?

From: "Andrei Bintintan" <klodoma(at)ar-sd(dot)net>
To: <pgsql-sql(at)postgresql(dot)org>
Subject: Constraint on 2 column possible?
Date: 2005-01-27 11:44:32
Message-ID: 013b01c50465$93854580$0b00a8c0@forge
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hi,

I have a table:
CREATE TABLE werke1(
id SERIAL,
id_hr int4 NOT NULL,
id_wk int4 NOT NULL
);

CREATE TABLE contact(
id SERIAL,
type varchar(20),
);

Now id_hr and id_wk are all referencing the same table contact(id). In the contact table I have another column called type.
How can I write a constraint that checks that id_hr references contact(id) and the contact(type='t1')
and that id_wk references contact(id) and the contact(type='t2').

More explicit: the id_hr shows to the id from contact, and this line from contact must have the line type='t1'. The same for id_wk just the type is another.

I can write:
CREATE TABLE werke1(
id SERIAL,
id_hr int4 NOT NULL references contact(id),
id_wk int4 NOT NULL references contact(id)
);
but how do I check also the type column?

Best regards,
Andy.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Mike Rylander 2005-01-27 12:02:43 Re: Constraint on 2 column possible?
Previous Message Richard Huxton 2005-01-27 11:35:48 Re: Complete instruction in a trigger