1、直接定义多个显示游标
create or replace procedure acc.dbp_realcitytrafficcnt is
cursor cur1 is select 。。。 --第一个游标
cursor cur2 is select 。。。 --第二个游标
begin
--调用cur1
begin
open cur1 ;
loop
fetch cur1 into 。。。
exit when cur1%notfound;
...业务逻辑
commit;
end loop;
close cur1;
end;
--调用cur2
begin
open cur2 ;
loop
fetch cur2 into 。。。
exit when cur2%notfound;
...业务逻辑
commit;
end loop;
close cur2;
end;
end dbp_realcitytrafficcnt;
--------------------------
2、通过定义ref游标来实现
type refcur_t is ref cursor; --声明ref游标类型
cur1 refcur_t; --声明第一个游标ref游标类型的变量
cur2 refcur_t; --声明第二个游标ref游标类型的变量
begin
--调用cur1
begin
open cur1 ;
loop
fetch cur1 into 。。。
exit when cur1%notfound;
...业务逻辑
commit;
end loop;
close cur1;
end;
--调用cur2
begin
open cur2 ;
loop
fetch cur2 into 。。。
exit when cur2%notfound;
...业务逻辑
commit;
end loop;
close cur2;
end;
end dbp_realcitytrafficcnt;
如对本文有疑问, 点击进行留言回复!!
荐 Oracle Data Guard(三)Oracle Data Guard补充技术
Windows10安装Oracle19c数据库详细记录(图文详解)
Oracle用decode函数或CASE-WHEN实现自定义排序
Oracle利用errorstack追踪tomcat报错ORA-00903 无效表名的问题
网友评论