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

来源:-

johnmk

2015-11-28 11:34

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

  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


写回答 关注

1回答

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

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

Oracle存储过程和自定义函数

Java开发重要课程,Oracle数据库开发工程师的加薪利器

56308 学习 · 118 问题

查看课程

相似问题