oracle 存储过程返回查询结果集

本文探讨了Oracle与SQL Server中存储过程的不同实现方式。在SQL Server中可以直接使用存储过程选择表中的所有数据,而在Oracle中则需要通过RefCursor返回记录集。文章通过具体的示例代码展示了这两种不同数据库系统的存储过程创建及调用方法。

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

http://wfly2004.blog.163.com/blog/static/117642720105441154399/

 

oracle同sql server的procedure是不一样的。

  在sql server下述语句完全正确。

  create procedure usp_test

  as

  begin

   select * from tablename

  end;

  但在oracle是运行不了的。在oracle的precedure要么使用cursor返回单个值(含单条记录),要么就使用ref cursor返回记录集。

  create or replace usp_test(cv_results in out sys_refcursor)

  is

  begin

         open cv_results for select * from tablename;

  end;

  在sqlplus调用:

  VARIABLE X REFCURSOR
  EXEC authors_sel(:x)
  print x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值