Skip site navigation (1) Skip section navigation (2)

Bug with foreign keys

From: "Donald Fraser" <demolish(at)cwgsy(dot)net>
To: <pgadmin-support(at)postgresql(dot)org>
Subject: Bug with foreign keys
Date: 2003-01-16 19:31:24
Message-ID: 001701c2bd95$de037320$1664a8c0@DEMOLITION (view raw or flat)
Thread:
Lists: pgadmin-support
Hiya Dave,
hope you had a good new years and all that.
I know you're busy, probably working on the new version or something.

Anyway found another bug in pgAdmin.
When you add foreign key constraints pgAdmin doesn't always tell the truth about them. This seems to be the case only when you have more than one.

The following example:

CREATE TABLE "tbl_useraudit" (
"id_user" int4 NOT NULL, 
"id_contrib" int4 NOT NULL,
"id_editedby" int4 NOT NULL, 
"dt_edited" timestamp (0) without time zone NOT NULL, 
CONSTRAINT "tbl_useraudit_pkey" PRIMARY KEY ("id_user", "dt_edited"),
CONSTRAINT "fkey_user" FOREIGN KEY ("id_user") REFERENCES "tbl_user" ("id") ON DELETE CASCADE ON UPDATE RESTRICT DEFERRABLE INITIALLY DEFERRED, 
CONSTRAINT "fkey_editedby" FOREIGN KEY ("id_editedby") REFERENCES "tbl_user" ("id") ON DELETE RESTRICT ON UPDATE RESTRICT DEFERRABLE INITIALLY DEFERRED
) WITHOUT OIDS;

Produces the following display in pgAdmin:
-- Table: public.tbl_useraudit
CREATE TABLE public.tbl_useraudit (
id_user int4 NOT NULL, 
id_contrib int4 NOT NULL, 
id_editedby int4 NOT NULL, 
dt_edited timestamp NOT NULL, 
CONSTRAINT tbl_useraudit_pkey PRIMARY KEY (id_user, dt_edited), 
CONSTRAINT fkey_editedby FOREIGN KEY (id_editedby) REFERENCES tbl_user (id) ON DELETE CASCADE ON UPDATE RESTRICT DEFERRABLE INITIALLY DEFERRED, 
CONSTRAINT fkey_user FOREIGN KEY (id_user) REFERENCES tbl_user (id) ON DELETE CASCADE ON UPDATE RESTRICT DEFERRABLE INITIALLY DEFERRED
) WITHOUT OIDS;

You will notice that ON DELETE CASCADE is displayed for both constraints. This is incorrect given the original definition. I checked the output from pg_dumpall on the backend and it gives the correct definition hence I'm guessing pgAdmin is at fault.

Regards
Donald

pgadmin-support by date

Next:From: John WellsDate: 2003-01-17 14:30:51
Subject: Resizing labels and textareas
Previous:From: Dave PageDate: 2003-01-16 16:04:32
Subject: Re: [BUG] ?

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group