请问各位大侠,我想通过存储过程来查询数据。需要带几个参数,然后返回的是集合,可能是多条记录的集合,而且每条记录的字段还挺多的,十几个字段。
能否提供一份完整详细的示例,谢谢。

解决方案 »

  1.   

    一条记录多个字段可以用record,返回值是多条数据的不是很清楚,等大神吧
      

  2.   

    昨天搞了一下,在SQKPLUS里面我能得到想要的信息了。代码如下:
    包头:
    create or replace package pkg_zbb
    as
     type  type_cursor is ref cursor;
     procedure read_rows (beginDate in varchar2,endDate in varchar2, result out type_cursor);
    end pkg_zbb;
    包体:
    create or replace package body pkg_zbb
    as
     procedure read_rows (beginDate in varchar2,endDate in varchar2, result out type_cursor)
     is
     begin
      open result for select * from v_zbb where rq>=beginDate and rq<=endDate;
     end read_rows;
    end pkg_zbb;但是也是有几个关于游标的问题,不清楚。
    1、程序来调用,打开一个游标result,是否需要关闭?存在多次调用,量不小的。
    2、如果要关闭,什么时候关闭?
    3、我有多个这样的查询的存储,是否每个存储定义的游标每次都要不一样,都使用result会出现问题吗?
      

  3.   

    1 你的程序能调过程,那么也一定能调SQL 直接把它写成
    select * from v_zbb where rq>=? and rq<=?就完事了。2 这里的游标和你使用select语句产生的游标没有区别,你select语句怎么处理,这里就怎么处理好了。
      

  4.   

    type type_name is table of element_type