存储函数(和存储过程类似)

存储函数(不同于存储过程):

1. 函数(Function)为一命名的存储函数,可带参数,并返回一计算值

2. 函数和过程的结构类似,但必须有一个return子句,用于返回函数值。

    <1>一般来讲,区别:存储函数可以有一个返回值,存储过程没有返回值

    <2>函数和过程都可以通过out指定一个或者多个输出参数。可以利用out参数,在过程和函数中实现返回多个值

    <3>存储过程和存储函数都可以有out参数,并且可以有多个out参数

    <4>存储过程可以通过out参数来实现返回值

    <5>使用原则:看个人使用情况,一般情况下,如果只有一个返回值,用存储函数,否则,用存储过程

3. 创建存储函数的语法:

1 create[or replace] FUNCTION 函数名(参数列表)
2 return 函数值类型
3 as
4 PLSQL子程序体

4. 实例:

 1 create or replace function querysal(eno in number)
 2 return number
 3 as
 4 --定义变量保存员工的薪水和奖金
 5 psal emp.sal%type;
 6 pcomm emp.comm%type;
 7 begin
 8 --得到该员工的月薪和奖金
 9 select sal,comm into psal,pcomm from emp where empno=eno;
10 
11 --直接返回年收入
12 return psal*12+nvl(pcomm,0);
13 end;

运行时输出的部分注释取消掉才可以输出显示

 

posted @ 2019-02-20 22:59  佐小白  阅读(282)  评论(0)    收藏  举报