服务器之家

服务器之家 > 正文

oracle存储过程中return和exit区别概述及测试

时间:2019-11-19 15:47     来源/作者:oracle教程网

代码如下:


create or replace procedure Test5(o_cellphone in varchar2) is 
v_cellphone cc_quiz_stat.cellphone %type; 
v_name cc_quiz_stat %rowtype; 
v_state cc_quiz_stat.state %type; 
begin 
declare 
cursor cur_cc is 
select * from cc_quiz_stat; 
cursor cur_jc(v_n varchar2) is 
select state from cc_quiz_stat; 
begin 
open cur_cc; 
loop 
fetch cur_cc 
into v_name; 
exit when cur_cc%notfound; 
open cur_jc(o_cellphone); 
loop 
fetch cur_jc 
into v_state; 
exit when cur_jc %notfound; 
if (o_cellphone = v_name.cellphone) then 
return; 
else 
dbms_output.put_line('手机号' || v_name.cellphone || '省份' || 
v_state); 
end if; 
end loop; 
close cur_jc; 
end loop; 
close cur_cc; 
end; 
end Test5; 


执行结果 
手机号18900000000省份全国 
手机号18900000000省份南京 
手机号18900000000省份天津 
手机号18900000000省份 上海 
手机号18900000000省份北京 

复制代码代码如下:


create or replace procedure Test5(o_cellphone in varchar2) is 
v_cellphone cc_quiz_stat.cellphone %type; 
v_name cc_quiz_stat %rowtype; 
v_state cc_quiz_stat.state %type; 
begin 
declare 
cursor cur_cc is 
select * from cc_quiz_stat; 
cursor cur_jc(v_n varchar2) is 
select state from cc_quiz_stat; 
begin 
open cur_cc; 
loop 
fetch cur_cc 
into v_name; 
exit when cur_cc%notfound; 
open cur_jc(o_cellphone); 
loop 
fetch cur_jc 
into v_state; 
exit when cur_jc %notfound; 
if (o_cellphone = v_name.cellphone) then 
exit; 
else 
dbms_output.put_line('手机号' || v_name.cellphone || '省份' || 
v_state); 
end if; 
end loop; 
close cur_jc; 
end loop; 
close cur_cc; 
end; 
end Test5; 


执行结果 
手机号18900000000省份全国 
手机号18900000000省份南京 
手机号18900000000省份天津 
手机号18900000000省份 上海 
手机号18900000000省份北京 
手机号18900000002省份全国 
手机号18900000002省份南京 
手机号18900000002省份天津 
手机号18900000002省份 上海 
手机号18900000002省份北京 
手机号18900000003省份全国 
手机号18900000003省份南京 
手机号18900000003省份天津 
手机号18900000003省份 上海 
手机号18900000003省份北京 
手机号18900000004省份全国 
手机号18900000004省份南京 
手机号18900000004省份天津 
手机号18900000004省份 上海 
手机号18900000004省份北京 

return 跳出整个循环,本循环后面的不再执行, 
exit 跳出本次循环,下次继续执行本次循环

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
配置IIS网站web服务器的安全策略配置解决方案
配置IIS网站web服务器的安全策略配置解决方案 2019-05-23
Nginx服务器究竟是怎么执行PHP项目
Nginx服务器究竟是怎么执行PHP项目 2019-05-24
运维必须知道的关于云服务器的十个问题
运维必须知道的关于云服务器的十个问题 2019-05-24
返回顶部