referential integrity error

From: Matej Hollý <h(dot)matej(at)krs(dot)sk>
To: pgsql-bugs(at)postgresql(dot)org
Subject: referential integrity error
Date: 2002-06-11 11:12:43
Message-ID: 3D05DB2B.8050509@krs.sk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

/*
If a table contains two or more foreign keys referencing the same
table and they reference the same record in the other table, the
record's primary key cannot be changed even if the keys have the
"ON UPDATE CASCADE" clause (see example below). It will say that
"referential integrity error - key referenced from `table' not found
in `table'".
*/

CREATE TABLE "Bug1" (
"ID" INT4,
"Description" TEXT NOT NULL,
PRIMARY KEY("ID")
);
CREATE TABLE "Bug2" (
"ID" INT4,
"Source" INT4 NOT NULL
REFERENCES "Bug1" ON UPDATE CASCADE ON DELETE NO ACTION,
"Destination" INT4 NOT NULL
REFERENCES "Bug1" ON UPDATE CASCADE ON DELETE NO ACTION,
"Description" TEXT NOT NULL,
PRIMARY KEY ("ID")
);
INSERT INTO "Bug1" VALUES (1,'Place');
INSERT INTO "Bug2" VALUES (10,1,1,'Move from Place to Place');
UPDATE "Bug1" SET "ID"=2 WHERE "ID"=1;

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Lee Kindness 2002-06-11 11:40:14 Re: Bug #640: ECPG: inserting float numbers
Previous Message Bruce Momjian 2002-06-11 10:58:54 Re: Bug #640: ECPG: inserting float numbers