加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

PL/SQL--函数 function

(2017-10-22 20:52:26)
分类: Oracle
函数 function
1 plsql中函数和过程的区别
1)关键字不同,过程:procedure, 函数:function
2)过程是没有返回类型和返回值,函数有
3)调用方式不同
    过程在plsql中是直接调用
    函数plsql中需要组成表达式调用(使用变量来接收返回值,作为函数或过程的参数)

2 语法
create [or replace] function 函数名[(参数列表)]
return  数据类型
is|as
--临时变量
begin
    ....
    --必须有return 语句
exception
    ...
end;

3 练习:创建一个函数,传入两个数字,返回最小值
create or replace function getmin_lzh(var_a number, var_b number)
return number
is
    var_tmp number;
begin
    if var_a < var_b then
        dbms_output.put_line(var_a);
        var_tmp := var_a;
    else
        dbms_output.put_line(var_b);
        var_tmp := var_b;
    end if;
    return var_tmp;
end;


create or replace function getmin_lzh(var_a number, var_b number)
return number
is
begin
    if var_a < var_b then
        dbms_output.put_line(var_a);
        return var_a;
    else
        dbms_output.put_line(var_b);
        return var_b;
    end if;
end;


declare
    var_x number := &x;
    var_y number := &y;
begin
    dbms_output.put_line(getmin_lzh(var_x, var_y));
    var_y := getmin_lzh(var_x, var_y);
    dbms_output.put_line(var_y);
end;

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有