Thanks for that Tom
On Wednesday 18 Dec 2002 5:50 pm, Tom Lane wrote:
> Gary Stainburn <gary.stainburn@ringways.co.uk> writes:
> > I've just tried this on a 7.2.1-5 system and get the same error.
> >
> >> create table jobtypes (
> >> jid int4 default nextval('jobs_jid_seq'::text) unique not null,
> >> jdid character, -- This joint reference
> >> jrank int4 not null references ranks(rrank), -- needs sorting
> >> jdesc character varying(40), -- job description
> >> contraint c2 foreign key (jdid,jrank) references ranks (rdid,rrank)
>
> ^^^^^^^^^
>
> >> );
> >> ERROR: parser: parse error at or near "foreign"
>
> If that's an accurate transcription, I think "contraint" -> "constraint"
> would help...
>
That did the trick. However, I now have another problem with the constraint
complaining about there not being an index to refer to. However, there is.
Output below:
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
);
NOTICE: CREATE TABLE/UNIQUE will create implicit index 'ranks_rid_key' for
table 'ranks'
NOTICE: CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
CREATE
create unique index "ranks_drank_index" on ranks using btree ("rdid",
"rrank");
CREATE
create table jobtypes (
jid int4 default nextval('jobs_jid_seq'::text) unique not null,
jdid character, -- This joint reference
jrank int4 not null references ranks(rrank), -- needs sorting
jdesc character varying(40), -- job description
constraint c2 foreign key (jdid,jrank) references ranks (rdid,rrank)
);
NOTICE: CREATE TABLE/UNIQUE will create implicit index 'jobtypes_jid_key' for
table 'jobtypes'
NOTICE: CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
ERROR: UNIQUE constraint matching given keys for referenced table "ranks" not
found
> regards, tom lane
--
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