问答详情
源自:-

真的很郁闷,和老师一模一样的代码(存储函数),总是出错

--查询某个员工的年收入

  CREATE OR REPLACE FUNCTION queryempincome(eno IN NUMBER)

  RETURN NUMBER

  AS

  --定义员工的薪水和奖金

  psal emp.sal%TYPE;

  pcomm emp.comm%TYPE;

  BEGIN

    --得到员工的薪水和奖金

    SELECT sal,comm INTO pasl,pcomm FROM emp WHERE empno=eno;

    --直接返回年收入

    RETURN psal*12+NVL(pcomm,0);

  END;

一运行就出现:Warning: Function created with compilation errors

http://img.mukewang.com/5659209a000150cf13660736.jpg


提问者:johnmk 2015-11-28 11:34

个回答

  • 慕仔7402843
    2015-12-09 00:31:11

    你返回类型是NUMBER类型,你的变量则是行类型,建议RETURN使用ROWTAPE类型