创建:
create or replace procedure t_ts(ref_cur out sys_refcursor) AS
BEGIN
open ref_cur for SELECT leixing FROM diaobodan;
end t_ts;
调用:
declare
s_cur SYS_REFCURSOR;
v_leixing varchar2(100);
begin
t_ts(s_cur);
loop
fetch s_cur into vv_name;
exit when s_cur%notfound;
dbms_output.put_line(v_leixing);
end loop;
end;
是这个意思吗?
1.既然你在循环的时候存储变量到游标,又循环游标操作,为什么你不在一个循环中,得到返回值然后对返回值进行操作呢?
2.select * from a where a.id=? 在oracle中用select * from a where a.id=&a的形式实现,你可以试试 会提示你输入变量