| 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
![]() |
![]() |