nodriver1 2023-12-18 19:26 采纳率: 50%
浏览 6

sql plus触发器运行错误

sql plus触发器运行错误
代码是书上的:

CREATE OR REPLACE TRIGGER t_verifysalary
   BEFORE UPDATE ON emp   
   FOR EACH ROW         
   WHEN(new.sal>old.sal)    
DECLARE
   v_sal   NUMBER;          
BEGIN
   IF UPDATING ('sal') THEN 
      v_sal := :NEW.sal - :OLD.sal;
      DELETE FROM emp_history 
            WHERE empno = :OLD.empno;    
      INSERT INTO emp_history           
           VALUES 
(:OLD.empno, :OLD.ename, :OLD.job, :OLD.mgr, :OLD.hiredate,:OLD.sal, :OLD.comm, :OLD.deptno);
      UPDATE emp_history                   
         SET sal = v_sal
       WHERE empno = :NEW.empno;
   END IF;
END;
/

放到sqlplus里面会报错:

警告: 创建的触发器带有编译错误。

SQL> show errors
TRIGGER T_VERIFYSALARY 出现错误:

LINE/COL ERROR


8/7 PL/SQL: SQL Statement ignored
8/19 PL/SQL: ORA-00947: 没有足够的值
SQL>
怎么回事呢

  • 写回答

3条回答 默认 最新

  • nodriver1 2023-12-18 19:29
    关注

    img

    评论

报告相同问题?

问题事件

  • 创建了问题 12月18日

悬赏问题

  • ¥100 求懂行的大ge给小di解答下!
  • ¥15 pcl运行在qt msvc2019环境运行效率低于visual studio 2019
  • ¥15 MAUI,Zxing扫码,华为手机没反应。可提高悬赏
  • ¥15 python运行报错 ModuleNotFoundError: No module named 'torch'
  • ¥100 华为手机私有App后台保活
  • ¥15 sqlserver中加密的密码字段查询问题
  • ¥20 有谁能看看我coe文件到底哪儿有问题吗?
  • ¥20 我的这个coe文件到底哪儿出问题了
  • ¥15 matlab使用自定义函数时一直报错输入参数过多
  • ¥15 设计一个温度闭环控制系统