--定一个游标,读取指定的一行.
create or replace procedure stus(ids student.id%type)
is
--定义一个静态游标/隐士的.
cursor stu_cursor is select * from student where id < ids;
members student%rowtype;
begin
for i in stu_cursor
loop
dbms_output.put_line(i.id||' '||
i.name||' '||
i.score||' '||
i.grade);
end loop;
end;
--第一个存储过程
create or replace procedure mypro(mycur out sys_refcursor)
is
--定义一个游标变量 ,sys_refcursor游标类型
stu_cursor sys_refcursor;
members student%rowtype;
begin
open stu_cursor for select * from student;
loop
fetch stu_cursor into members;
exit when stu_cursor%notfound;
dbms_output.put_line(members.id||' '||
members.name||' '||
members.score||' '||
members.grade);
end loop;
end;
--写一个存储过程执行另外一个存储过程
create or replace procedure all_pro
as
s sys_refcursor;
begin
mypro(s);
end;