Oracle 执行存储过程五种方法(带参数& 不带参数)

1.如果是命令窗口就用exec 存储过程名:

1

EXEC  procedure--procedure是存储过程名

2.如果是  SQL窗口就用 begin  存储过程名  end;

1

2

3

begin

  procedure;--procedure是存储过程名

end;

3.如果是程序中调用就用 call 存储过程名 ,举个栗子:

hibernateDao.excuteSqlUpdate("{Call proc_stuInfo()}");//存储过程proc_stuInfo

4、带 in out 类型的参数执行  (oracle 存储过程 交换两个变量的值)

先定义变量赋值后 再调用执行  例如:
declare
     a  varchar2(20):= '01';
     b  varchar2(20):='02';
   --  a= '01' ;b='02';
begin  
    exchange(a ,b);

--存储过程定义
create or replace procedure exchange(a in out varchar2, b in out varchar2) is
   v_b varchar2(30);
   -- a  varchar2(30);
   --b  varchar2(30);
begin  
   v_b :=a;   
   a := b;
   b := v_b;
   dbms_output.put_line('a:'||a||'   b:'||b);

end exchange;


--执行
declare
     a  varchar2(20):= '01';
     b  varchar2(20):='02';
   --  a= '01' ;b='02';
begin  
    exchange(a ,b);
END;

结果:

 

5.存储过程中调用存储过程 

直接写存储过程名就行

procedure--procedure是存储过程名

原文地址:https://www.cnblogs.com/tdskee/p/16152583.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值