你要先定义ref cursorCREATE OR REPLACE PACKAGE pkg_test
AS
TYPE myrctype IS REF CURSOR; PROCEDURE get (p_rc OUT myrctype);
END pkg_test;
/CREATE OR REPLACE PACKAGE BODY pkg_test
AS
PROCEDURE get ( p_rc OUT myrctype)
IS
BEGIN
OPEN p_rc FOR
SELECT ID, NAME, sex, address, postcode, birthday
FROM student;
END get;
END pkg_test;
/
AS
TYPE myrctype IS REF CURSOR; PROCEDURE get (p_rc OUT myrctype);
END pkg_test;
/CREATE OR REPLACE PACKAGE BODY pkg_test
AS
PROCEDURE get ( p_rc OUT myrctype)
IS
BEGIN
OPEN p_rc FOR
SELECT ID, NAME, sex, address, postcode, birthday
FROM student;
END get;
END pkg_test;
/
解决方案 »
- oracle 基础 Warning: Procedure created with compilation errors
- 请用一个sql语句得出结果,从t1,t2中取出如t3所列格式数据。
- plsql工具的import问题!
- 问几个简单的问题!
- oralce连接的一个疑问
- 安装oracle9204, 在安装compat-gcc-7.3-2.96.122.i386.rpm软件包的时候,出错,请问这是怎么回事啊
- 在服务器端配置资料档案库的时候,安装了一半以上就提示没有监听器,???
- 请教各位:不知在哪里能找到一些有关Oracle9i入门和SQL9i的一些资料,谢了先
- 在oracle 8i 中如何导出一个数据库的SQL脚本?
- Convert Mysql to Oracle使用的问题
- 救命啦
- 一个小问题
as
type cur_test is ref cursor; -- 定義一個cursor的type
end pkg_test;
/
create or replace procedure p_test
(
v_cur out pkg_test.cur_test
)
as
v_sql varchar2(100); --
begin
v_sql := 'select a1,a2 from test';
OPEN v_cur FOR v_sql; --
exception
when others then
DBMS_OUTPUT.PUT_LINE('Error ---------------' || sqlcode || ' : ' || sqlerrm );
end p_test;
/
必须使用包