pl/sql中return和exit区别

iamlaosong文

经测试:

1、exit只能用于循环中,并且退出循环往下执行;

2、return可用于循环或非循环,并且退出整个程序模块不往下执行。

declare
  i number :=1;
  j number :=1;
begin
     loop
         if i>3 then
            exit;
            --return;
         end if;
         j:=1;
         begin
         loop
             if j>2 then
                exit;
                --return;
             end if;
             dbms_output.put_line('i=' || i || ',j=' || j); 
             j:=j+1;
         end loop;
         end;
         i:=i+1;
     end loop;
     dbms_output.put_line('程序正常退出!'); 
 end;
执行结果如下:

i=1,j=1
i=1,j=2
i=2,j=1
i=2,j=2
i=3,j=1
i=3,j=2

程序正常退出!


如果上述代码中放开return语句,注释掉exit语句,则结果是:

i=1,j=1
i=1,j=2


试试看,如果放开一个return语句,结果是什么样的呢?

你可能感兴趣的:(pl/sql中return和exit区别)