1.定义一个不带参数的游标
declare
cursor cc is --定义一个游标 cc
select * from emp where deptno='&args';
ccrec cc%rowtype;--定义一个游标变量 ccrec
begin
open cc; --打开游标
loop --开始loop循环
fetch cc into ccrec;--提取一行数据到 游标变量ccrec 中
exit when cc%notfound;--退出,直到 游标cc 取不到值
dbms_output.put_line(ccrec.ename||'***'||ccrec.job);--输出deptno符合输入条件的职工的ename和job。 1.ccrec.ename(游标变量.表列名) 2.拼接用“||”,而不是“+”
end loop;--结束循环
close cc; --关闭游标
end;
2.定义一个带参数的游标
declare
cursor cc1(dtno number) is --定义一个带参数的游标 cc1
select * from emp where deptno=dtno;
ccrec1 cc1%rowtype;
begin
open cc1('&args'); --打开游标,并附上参数
loop
fetch cc1 into ccrec1;
exit when cc1%notfound;
dbms_output.put_line(ccrec1.ename||'***'||ccrec1.job);
end loop;
close cc1;
end;