在Oracle8i中
小弟现在正在学编写存储过程,现在我建一个存储过程用来返回记录集
创建包
create or replace package typecur
as
type cursortype is ref cursor;
end;
创建存储过程
create or replace procedure selectdata
(p_cursor in out typecur.cursortype)
as
begin
open p_cursor for select * from tast;
end;然后我在SQL*plus调用
execute selectdata;
但是提示错误:
BEGIN selectdata; END; *
ERROR 位于第 1 行:
ORA-06550: 第 1 行, 第 7 列:
PLS-00905: 对象 DHY.SELECTDATA 无效
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
请各位高手帮帮我啊!谢谢您啦
小弟现在正在学编写存储过程,现在我建一个存储过程用来返回记录集
创建包
create or replace package typecur
as
type cursortype is ref cursor;
end;
创建存储过程
create or replace procedure selectdata
(p_cursor in out typecur.cursortype)
as
begin
open p_cursor for select * from tast;
end;然后我在SQL*plus调用
execute selectdata;
但是提示错误:
BEGIN selectdata; END; *
ERROR 位于第 1 行:
ORA-06550: 第 1 行, 第 7 列:
PLS-00905: 对象 DHY.SELECTDATA 无效
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
请各位高手帮帮我啊!谢谢您啦
你的过程是有参数的
你怎么不把游标变量传进去?
晕倒啊
declare
p_cursor typecur.cursortype;
begin
selectdata(p_cursor);
//其它处理
end;