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;
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 |