From: Gary Stainburn <gary.stainburn@ringways.co.uk>
To: pgsql-sql@postgresql.org
Subject: references table(multiple columns go here)
Date: Wed, 18 Dec 2002 16:25:11 +0000
Message-ID: <200212181625.11316.gary.stainburn@ringways.co.uk> (raw)
Hi folks,
how do I define a referene from 2 columns in 1 table to 2 columns in another.
I have:
create table ranks (
rid int4 default nextval('ranks_rid_seq'::text) unique not null,
rdid character references depts(did), -- department
rrank int4 not null, -- departmental rank
rdesc character varying(40) -- Rank Description
);
create unique index "ranks_drank_index" on ranks using btree ("rdid",
"rrank");
copy "ranks" from stdin;
1 O 1 Trainee TTI
2 O 2 TTI
3 M 1 Cleaner
4 M 2 Passed Cleaner
5 M 3 Fireman.
\.
I would now like to define the following table so that inserts can only happen
if jdid matches rdid and jrank matches rrank.
create table jobtypes (
jid int4 default nextval('jobs_jid_seq'::text) unique not null,
jdid character references ranks(rdid), -- This joint reference
jrank int4 not null references ranks(rrank), -- needs sorting
jdesc character varying(40) -- job description
);
copy "jobtypes" from stdin;
1 M 3 Charge Cleaner
2 O 3 Lock Carriages
\.
(I want the first row to work and the second to be rejected)
--
Gary Stainburn
This email does not contain private or confidential material as it
may be snooped on by interested government parties for unknown
and undisclosed purposes - Regulation of Investigatory Powers Act, 2000
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: gary.stainburn@ringways.co.uk
Subject: Re: references table(multiple columns go here)
In-Reply-To: <200212181625.11316.gary.stainburn@ringways.co.uk>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox