-1
我一直坚持这个问题几天,不知道为什么这是编译有错误。错误缺失;在线“:NEW.desc:= concat(:NEW.desc,'Paul dollar');”,任何人都可以看到我要去哪里错了吗?甚至将我指向正确的方向将是非常棒的。触发器显示缺少问题;
CREATE TRIGGER trig_name
before INSERT ON table_name for each row
BEGIN
IF(:NEW.name= 'John') THEN
:NEW.bank_bal := :NEW.bank_bal - .10;
:NEW.desc:= concat(:NEW.desc, 'John ten');
ENDIF;
IF(:NEW.name= 'Jane') THEN
:NEW.bank_bal := :NEW.bank_bal - .20;
:NEW.desc:= concat(:NEW.desc, 'Jane twenty');
ENDIF;
IF (:NEW.name= 'Ron') THEN
:NEW.bank_bal := :NEW.bank_bal - .20;
:NEW.desc:= concat(:NEW.desc, 'Ron twenty');
ENDIF;
IF (:NEW.name= 'Paul') THEN
:NEW.bank_bal := :NEW.bank_bal - 1;
:NEW.desc:= concat(:NEW.desc, 'Paul dollar');
ENDIF;
END;
/
'DESC'是SQL关键字和Oracle保留字。你应该把这个专栏命名为别的。 –
您是否使用**双引号**创建了**引用标识**的“DESC”列?如果是,那么每次引用列名称时都必须使用双引号amrk。 –