Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> INSERTING predicate error.
Hi !
I think that I hit a bug in INSERTING predicate in trigger:
I have parent table with complex before trigger, that process table changes. Its logic is controlled by INSERTING, UPDATING and DELETING predicate. In particular, on inserting trigger generates primary key for new row. I have child table with foreign key constraint to parent table. This table have trigger too. This trigger updates summary field on parent table (executing update on parent table). Operations on child table failed with 'mutating table' on child table in child table trigger. Exploration shows, that INSERTING predicate is TRUE in parent table trigger (despite that this trigger is fired by UPDATE statement in child table trigger). So trigger tries change primary key and generates 'mutating table' error. Most intresting, that splitting parent table trigger into tree separate triggers on insert, update and delete fixed this problem.
ORACLE RDBMS 8.0.5 Standard Edition on Unixware 7.
WBR
Tim
Received on Wed Jul 28 1999 - 04:47:15 CDT
![]() |
![]() |