oracle中存储过程调用存储过程(带有返回结果集)

    在oracle中,存储过程是可以调用存储过程的。其中,被调用的存储过程可以带返回游标的结果集,或者是一个定义的变量,两者都可以,在实现过程中几乎没什么差别。在调用的存储过程,要注意写好对应的游标或者定义的变量。所举例子如下:

    Procedure Proc_Test(
     Result_Set1 OUT RefCursorType,   --一般查询的游标结果集
     Result_Set2 OUT RefCursorType,   --直接查询的游标结果集
     Result_Set3 OUT RefCursorType,   --间接查询的游标结果集
     Result_rowcount1 OUT varchar2,   --执行插入语句影响到的行数
     Result_rowcount2 OUT varchar2,   --执行更新语句影响到的行数
     Result_rowcount3 OUT varchar2    --执行删除语句影响到的行数
     )
 is

 

begin
 
  PCK_DATAMANAGER.Proc_Select('T_RTU','RTU_ID,RTU_NAME','=,=','1,华景新城泵房','RTU_TYPE,RTU_MAN,GROUP_ID',Result_Set1);
   
  PCK_DATAMANAGER.Proc_RelationSelect('T_OPERATOR','OPERATOR_CODE','=','LIJC','Compose_OperatorAsGroup',
  'SUPERGROUP_ID','=','1','GROUP_NAME',Result_Set2);
 
  PCK_DATAMANAGER.Proc_IndRelationSelect('GROUP_ID','=','3','Relate_RTUGroupAsMoniotrGroup','MONITOR_ID',Result_Set3);
 
  PCK_DATAMANAGER.Proc_InsertInto('T_RTU','RTU_ID,RTU_NAME,RTU_TYPE,RTU_MAN,GROUP_ID','11,华城帝国,水池,1899911,8',Result_rowcount1);
  
  PCK_DATAMANAGER.Proc_Update('T_RTU','RTU_ID,RTU_NAME','12,华城帝国之都','RTU_MAN,GROUP_ID','=,=','1899911,8',Result_rowcount2);
 
  PCK_DATAMANAGER.Proc_Delete('T_RTU','RTU_ID,RTU_NAME,RTU_TYPE,RTU_MAN,GROUP_ID','=,=,=,=,=','12,华城帝国之都,水池,1899911,8',Result_rowcount3);   
 
  end Proc_Test;

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值