oracle 包 及 包调用

本文详细介绍了如何在Oracle中创建和使用包,包括包头的定义,如变量和函数,以及包体中函数的具体实现。通过示例展示了如何调用包中的tax和addd函数进行计算,并输出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

create package testpack --创建一个包头,里面定义变量和方法名称,方法参数,返回值类型
is                   
                v_tax number;
                v_s number;
                  Function tax(v_money number) return number;
                  function addd(v_a number,v_b number) return number;
end testpack;














create package body testpack --创建包体,里面具体实现包头定义的方法.注意格式
is       
         function tax(v_money number)   return number is
         begin

           if(v_money<3500) then null;
          elsif(v_money>=3500 and v_money<5000) then v_tax := (v_money-3500)*0.03-0;
          elsif(v_money>=5000 and v_money<8000) then v_tax := (v_money-3500)*0.1-105;
          elsif(v_money>=8000 and v_money<12500) then v_tax := (v_money-3500)*0.2-555;
          elsif(v_money>=12500 and v_money<38500) then v_tax := (v_money-3500)*0.25-1005;
          elsif(v_money>=38500 and v_money<58500) then v_tax := (v_money-3500)*0.3-2755;
          elsif(v_money>=58500 and v_money<83500) then v_tax := (v_money-3500)*0.35-5505;
          elsif(v_money>=83500) then v_tax := (v_money-3500)*0.45-13505;  
              
            end if;
            return v_tax ;
         end tax;
         
         
         function addd(v_a number,v_b number) return number is
           begin

             v_s := v_a+v_b;
             
             return v_s;
            end addd;
         
                      
end testpack;





---调用方法


declare
     v_tax number;
     v_s number;
    begin
      v_tax:= scott.testpack.tax(&input2);
      v_s := scott.testpack.addd(&input,&input1);
      dbms_output.put_line(v_s);
       dbms_output.put_line(v_tax);
      end;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值