12
返回列表 发新帖
楼主: cjacat

能从子程序中返回一个游标吗?或者怎么从子程序中返回一个记录集,谢谢!

[复制链接]
论坛徽章:
0
11#
 楼主| 发表于 2001-10-13 11:23 | 只看该作者
最初由 guo 发布
[B]对,也是使用open打开,fetch取得其中的数据
如果只是看一下结果可以在sqlplus中使用print myrefcursor的方式查看内容

variable a refcursor;
variable c int;

exec sdky.gethp(:a,:c);
print :a; [/B]

xx

使用道具 举报

回复
论坛徽章:
0
12#
 楼主| 发表于 2001-10-13 11:53 | 只看该作者
CREATE OR REPLACE PACKAGE DEAL_PACKAGE AS
TYPE hpcur is REF CURSOR;
PROCEDURE Get_HP (hp OUT hpcur);
END Deal_package;
CREATE OR REPLACE PACKAGE DEAL_PACKAGE AS
TYPE hpcur is REF CURSOR;
PROCEDURE Get_HP (hp OUT hpcur);
END Deal_package;

按照楼上兄弟的方法好象不能运行
variable a refcursor;
exec deal_package.gethp(:a);
print :a;

使用道具 举报

回复
论坛徽章:
0
13#
发表于 2001-10-13 12:06 | 只看该作者
记录集也可以说是数组嘛,该是容易了 :)

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
14#
发表于 2001-10-19 15:00 | 只看该作者
大致的过程:
1.CREATE OR REPLACE PACKAGE MY_PACKAGE AS
TYPE hpcur is REF CURSOR;
END MY_PACKAGE;
/

2.在函数MyFunc或过程里加入 my_cur out hpcur;
open my_cur for select .......................

3.调用时 declare my_cur hpcur;
v_code := my_func(....,my_cur);
fetch my_cur into ...............

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表