Oracle 我怎么才能修好这个触发器呢?我看没问题,我得到了一个PLS-00103
以下触发代码在一定数量的访问后对账单应用折扣,但我收到以下错误PLS-00103:在期望以下情况之一时遇到符号=:=。@%;指示器Oracle 我怎么才能修好这个触发器呢?我看没问题,我得到了一个PLS-00103,oracle,plsql,triggers,Oracle,Plsql,Triggers,以下触发代码在一定数量的访问后对账单应用折扣,但我收到以下错误PLS-00103:在期望以下情况之一时遇到符号=:=。@%;指示器 CREATE OR REPLACE TRIGGER CHECK_DISCOUNT BEFORE INSERT OR UPDATE OF C_NO,BILL ON APPOINTMENT FOR EACH ROW DECLARE CURSOR C_APPTMNT IS SELECT C_NO,COUNT(C_NO) FROM AP
CREATE OR REPLACE TRIGGER CHECK_DISCOUNT
BEFORE INSERT OR UPDATE OF C_NO,BILL ON APPOINTMENT
FOR EACH ROW
DECLARE
CURSOR C_APPTMNT
IS
SELECT C_NO,COUNT(C_NO)
FROM APPOINTMENT GROUP BY C_NO;
V_C_NO APPOINTMENT.C_NO%TYPE;
VISIT NUMBER(2);
V_TEN NUMBER(3):=0.9;
BEGIN
OPEN C_APPTMNT;
FETCH C_APPTMNT INTO V_C_NO,VISIT;
IF VISITS = 3 AND :NEW.C_NO = V_C_NO THEN
:NEW.BILL := :NEW.BILL * V_TEN
END IF;
END;
/
获取新错误
PLS-00103:在期望一个
以下:
. * @ % & = - + ; < / > at in是mod而不是rem
或者!=或~=>=作业需要:
@如果你有3个开放式问题,最好返回并接受对你提供正确答案的任何问题的答案。2在:NEW.BILL=:NEW.BILL*V_TEN;3约会时定义的触发器,从定义的行级触发器将引发ORA-04091的同一个表中执行select语句:表XXXX正在变异…添加分号:,复制粘贴,修正了作业,完全忘记了。@andrew lol不只是新手stackoverflow@NicholasKrasnov我修改了触发器,但是得到了一个不同的错误。是的,我更改了代码,但是现在我得到了一个新的错误,要么在错误中编辑,或者最好开始一个新问题。@Andrew edited已在第19行fetchadd出现错误;在:new.bill:=:new.bill*v_十的末尾@安德鲁真不敢相信我从没见过,谢谢你
:NEW.BILL := :NEW.BILL * V_TEN;