Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> What's wrong with the trigger?
Hello,
I want to create a trigger for the next purpose:
When I insert into ACCEPT,check the column value ORD_ISS of MORDER,
if ORD_ISS is null,update MORDER set ORD_ISS = ACCEPT.ACCEPT_QTY;
else update MORDER set ORD_ISS = ORD_ISS + ACCEPT.ACCEPT_QTY;
And the script is:
CREATE OR REPLACE TRIGGER INS_ACCEPT
AFTER INSERT ON ACCEPT FOR EACH ROW DECLARE iss_temp NUMBER; accept_temp NUMBER; BEGIN SELECT ORD_ISS INTO iss_temp FROM MORDER WHERE (ORD_NO = :new.ord_no AND ORD_NUM = :new.ord_num); IF iss_temp IS NULL THEN UPDATE MORDER SET ORD_ISS = :new.accept_qty WHERE (ORD_NO = :new.ord_no AND ORD_NUM = :new.ord_num); ELSE accept_temp := :new.accept_qty; accept_temp := accept_temp + iss_temp; UDPATE MORDER SET ORD_ISS = accept_temp WHERE (ORD_NO = :new.ord_no AND ORD_NUM = :new.ord_num); END IF; COMMIT;
But when I compile the script in SQL*Plus,there's an error:
Warning: Trigger created with compilation errors.
What's wrong with my trigger?
Please give me some tips,Thank you in advance!
Please Cc to : violin.hsiao_at_mail.pouchen.com.tw,Thank you :)
Received on Wed Aug 19 1998 - 20:23:13 CDT
![]() |
![]() |