declare
v_empname emp.ename%type;
v_job emp.job%type;
v_deptno emp.deptno%type;
cursor emp_test is
select ename,job from emp where deptno=v_deptno;
cursor emp_test2(p_deptno emp.deptno%type)is
begin
v_deptno:='admin';
open emp_test;
loop
fetch emp_test
into v_empname,v_job;
exit when emp_test%notfound;
dbms_output.put_line('empname='||v_empname||' empjob='||v_job);
end loop;
close emp_test;
end;
显示游标最基本用法
在declare中用到%type时因为在定义表中对应的数据项的数据类型时,为了防止之后表中的数据类型修改而配对不上,所以采用这个,算是自适应了吧。
有一个白痴问题,他出的结果不是和之前select结果在同一个地方,而是在output页出来,我还不知道,,白痴,,
关闭游标就相当于删除游标了
在尝试中故意不在块中关闭游标,之后就没办法关闭了,上网查资料有人说oracle中的游标在使用时候无法关闭,则之后就不能关闭,一直占用着了,而oracle中游标数量大小是一定的,占用满时系统就会运行慢啊或是崩溃什么的,个人觉得不可信,但尝试关闭游标未果,,,期有人解惑。