Oracle sys_refcursor 游标变量不能用作参数传递
2010-11-30 07:59
357 查看
今天在使用 Oracle sys_refcursor 游标变量时, 抛出错误: 'Execution failed: ORA-00604: 递归 SQL 级别1出现错误', 'ORA-01001: 无效的游标'. 原来是sys_refcursor 游标变量不能用作参数传递. 请见如下 code: PROCEDURE P1( p_cursor OUT sys_refcursor, p_year IN NUMBER ) BEGIN ...... P2(p_cursor, 'test'); END; PROCEDURE P2( p_cursor OUT sys_refcursor, p_company IN VARCHAR2 ) BEGIN ...... END; 需改成 TYPE t_cursor IS REF CURSOR; -- 在 PACKAGE(Spec) 中定义 PROCEDURE P1( p_cursor OUT t_cursor, p_year IN NUMBER ) BEGIN ...... P2(p_cursor, 'test'); END; PROCEDURE P2( p_cursor OUT t_cursor, p_company IN VARCHAR2 ) BEGIN ...... END;
相关文章推荐
- oracle游标应用难点 sys_refcursor 和 cursor(转)
- C# 对应 Oracle 存储过程 的 SYS_REFCURSOR 应该 传入什么类型的参数?
- Oracle动态sql返回游标(sys_refcursor)
- oracle 游标变量ref cursor详解
- oracle 游标变量ref cursor详解
- sys_refcursor的使用(oracle自定义游标)
- oracle游标应用难点 sys_refcursor 和 cursor(转)
- oracle游标应用难点 sys_refcursor 和 cursor
- Oracle 参照游标(SYS_REFCURSOR)使用
- oracle游标应用 sys_refcursor 和 cursor比较
- oracle 中 cursor 与refcursor及sys_refcursor的区别 (转载)
- Oracle 10g存储过程学习二——为参数传递变量和数据
- oracle中cursor与refcursor及sys_refcursor的区别
- ORACLE 参照变量(ref cursor)
- oracle 中 cursor 与refcursor及sys_refcursor的区别
- 【转】oracle中cursor与refcursor及sys_refcursor的区别
- Oracle游标-cursor_01-简单不带参数实现功能
- cursor 与refcursor及sys_refcursor的区别 (转载) 引用 一、显式cursor 显式是相对与隐式cursor而言的,就是有一个明确的声明的cursor。显式游标的声明类
- oracle 存储过程返回 结果集 table形式 (使用sys_refcursor 及程序包package 两种方式)
- (转)oracle 中 cursor 与refcursor及sys_refcursor的区别 (转载)