如题,怎么返回多个查询结果,用存储过程
比如
sql1select count(*)
  from test;sql2select * from test谢谢

解决方案 »

  1. 存储过程中声明一个OUT 游标返回参数,然后定义:
    TYPE OUTDATA IS REF CURSOR;最后返回游标
    OPEN OUT_DATA FOR
    SELECT A, B, C, D FROM DUAL;
      

  2. 如果你要返回的是多个结果集,就要定义多个 游标类型的返回参数 ,类似下面:
    create PROCEDURE get_something (cur_Employees OUT sys_refcursor,
      cur_Jobs OUT sys_refcursor  )
      IS
      BEGIN
        OPEN cur_Employees FOR
      SELECT * FROM Employees;
      OPEN cur_Jobs FOR
      SELECT * FROM Jobs;
      END ;
      
      

类似问题 »