| From: | Brian Blaha <bblaha(at)umr(dot)edu> |
|---|---|
| To: | pgsql-sql(at)postgresql(dot)org |
| Subject: | Apparent referential integrity bug in PL/pgSQL |
| Date: | 2002-10-18 07:15:32 |
| Message-ID: | 3DAFB514.7080002@umr.edu |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-sql |
I have a function that operates on two tables A and B, such that B has a
foreign key on A, as follows:
INSERT INTO A (...) several times
INSERT INTO B (...) several times, with foreign keys pointing to the new
members of A
DELETE FROM A (...), possibly including some of the newly added members
Even though B's foreign key is defined ON DELETE CASCADE, I get a
referential integrity
violation when I run this function. If instead, I comment out the DELETE
statement, start a
transaction block, run the function, run the DELETE statement, and end
the transaction, no
errors occur. To run those statements with one function call, I need to
split the INSERTs and
DELETEs into separate functions, and call them separately from a third
function. I am using
version 7.2.2. Has this been corrected in the beta versions or can
someone confirm this for me?
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Brian Blaha | 2002-10-18 07:19:50 | UPDATE: Apparent referential integrity bug in PL/pgSQL |
| Previous Message | Josh Berkus | 2002-10-18 05:27:14 | Re: Can I create working trigger on view |