想写个存储过程A 可以返回一个结果集,另外一个存储过程B 调用A 这个存储过程. 得到结果集。

解决方案 »

  1.   

    SQL SERVER 用临时表 很好实现。 Oracle一直没看懂。求指教!
      

  2.   

    一个简单的例子,关键还是得自己多做实践
    create or replace procedure  sp_test(i_yhbh in varchar, --用户编号
                            o_cur_flag out  sys_refcursor --返回查询出的结果集
                               )
    is
     begin
         open o_cur_flag for 
          select * from T1 where  yhbh = i_yhbh;
       end;
    end test ;
      

  3.   

    CREATE OR REPLACE PROCEDURE proA(v_output sys_refcursor)
    IS
    OPEN v_output FOR SELECT 1 ID FROM dual;
    END proA;CREATE OR REPLACE PROCEDURE PROB
    IS
    v_id NUMBER;
    v_cur sys_refcursor;
    BEGIN
      proA(v_cur);
      LOOP
      FETCH v_input INTO v_id;
      exit WHEN v_input%NOTFOUND;
      dbms_output.put_line(v_id);
      end LOOP;
    END;
      

  4.   

    table实现
    这种逻辑最好可以放在一个sp里面实现