PL/SQL跳出循环语句(EXIT,CONTINUE,GOTO,EXIT WEHN)操作实例

PL/SQL跳出循环语句(EXIT,CONTINUE,GOTO,EXIT WEHN)操作实例源码如下:

-- Created on 2018/3/26 by E.WANG 
/*

*/
declare 
  -- Local variables here
  i integer:=0;
  resutl int;
begin
  /*
  在PL/SQL编程语言中,EXIT语句有以下两种用法:
  1.当循环中遇到EXIT语句循环立即终止,程序控制继续下一个循环语句后面。
  2.如果使用嵌套循环(即一个循环内的另一个循环),EXIT指令将停止最内层循环的执行,并开始执行的下一行代码的程序段之后。
  */
  dbms_output.put_line('----------------------exit---------------------'); 
  <<forLoop_exit>>
  for i in 1..10 loop
      if i>8 then
         --大于8时,退出循环
         exit;
      else
         dbms_output.put_line('The ' || i || ' Times');        
      end if;
  end loop forLoop_exit;
  
  dbms_output.put_line('----------------------exit when---------------------');     
   <<forLoop_exitWhen>>
  for i in 1..10 loop
       --当能被5整除时,退出循环
       exit when (mod(i,5)=0);
       dbms_output.put_line('The ' || i || ' Times');        
  end loop forLoop_exitWhen; 
  
  /*
  CONTINUE语句使循环跳过其身的其余部分,并立即重新测试其使用条件重申之前。
  换句话说,它会强制循环的下一次迭代发生,跳过其间的任何代码
  */
  dbms_output.put_line('----------------------continue---------------------'); 
  <<whileLoop_continue>>
  while i<=6 loop
        i:=i+1;
        if mod(i,2)=0 then
           dbms_output.put_line('The ' || i || ' Times');
           --能被2整除时,执行下一次循环
           continue;
        end if;
        dbms_output.put_line('Next Loop!');   
       
  end loop whileLoop_continue;
  /*
  在PL/SQL编程语言的GOTO语句提供无条件跳转到在同一个子程序的GOTO标签的语句。
  注意:GOTO语句是不建议使用在任何编程语言,因为它使得程序难以跟踪控制流程,
  使程序难以理解,难以修改。
  如果使用GOTO的任何程序可以改写,就尽量不要使用GOTO语句。
  */
  dbms_output.put_line('----------------------goto---------------------');
  i:=0;
  <<whileLoop_goto>>
  while i<=6 loop
        i:=i+1;
        if mod(i,2)!=0 then
           dbms_output.put_line('The ' || i || ' Times');
           --当被2整除时,跳到循环开始位置
           goto whileLoop_goto;
        end if;
        dbms_output.put_line('Next Loop!');   
       
  end loop whileLoop_goto;
  
end;

窗口截图:


运行截图:


猜你喜欢

转载自blog.csdn.net/henni_719/article/details/79695559