0

SQL を使い始めたばかりで、問題があります。Before Update トリガーを書きたかったのですが、テーブルを更新しようとすると、常にそのエラー (ORA-04091) が発生します。理由はよくわかりません。更新前のトリガーは、変更されたテーブルに問題はないと思ったので。

 BEFORE UPDATE ON ORD
 FOR EACH ROW
 DECLARE
 shipping2 varchar(10);
 BEGIN
 SELECT SHIPDATE into shipping2 
 FROM ORD 
 WHERE ORDID = :old.ORDID;

 IF (shipping2 is not NULL) then
    raise_application_error(20121,'ORDER already on the way!!!');
 end if;

 END;
-------------------------------------------------------

UPDATE ORD
SET TOTAL = 222
WHERE ORDID = 603;



4

1 に答える 1