Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: PL/SQL: Mutating Table
Valentin wrote...
>
>Environment: Oracle 7.3, running on an NT box.
>
>I have an update trigger that is very simple:
>
>CREATE OR REPLACE TRIGGER article_FNAME
>AFTER UPDATE OF FNAME ON mfs.article FOR EACH ROW
>BEGIN
> IF (:old.FNAME IS NOT NULL) THEN
> INSERT INTO mfs.arttrans
>(AN,DTUPDATE,OPERINIT,UPDATETYPE,UPDATEPROCESS)
> VALUES (:old.AN,SYSDATE,:old.PRINIT,'C','A') ;
> END IF ;
>END ;
>When I try to update article.FNAME field, I get the error message:
>ERROR at line 1:
>ORA-04091: table MFS.ARTICLE is mutating, trigger/function may not see it
>ORA-06512: at "MFS.ARTICLE_FNAME", line 4
>ORA-04088: error during execution of trigger 'MFS.ARTICLE_FNAME'
>Any idea why this happens?
The mutating table error is due to an attempt to update a row in another table that has a foreign key relationship to the table on which the trigger is located. In your case, you probably have a foreign key between ARTICLE and ARTTRANS.
Dan Received on Sat Mar 15 1997 - 00:00:00 CST
![]() |
![]() |