当前位置: 代码迷 >> Oracle开发 >> oracle 循环解决方案
  详细解决方案

oracle 循环解决方案

热度:96   发布时间:2016-04-24 06:41:17.0
oracle 循环
create or replace procedure 过程名(参数1,参数2)
as
变量1;
变量2;
定义游标 cur_1并给值
begin
   open cur_1;
      loop
     fetch cur_1 into 变量1,变量2; --依次将游标的值给
      exit when cur_1%notfound; --循环的条件
      if  条件1 then 
               这里还有if 判断,请问下  要跳出这里的 if 继续执行外面的语句用什么?还有,我在这里写的insert语句,好像都没插入到数据库但是,我在测试的时候又是执行了的,请问下可能是什么原因啊?             
           elsif  条件2 then
                    条件满足时 ,这里的insert语句也没有插入数据库         
           else
              return;
          end if;
   end loop;
   close cur_1;
end;
------解决方案--------------------
引用:
create or replace procedure 过程名(参数1,参数2)
as
变量1;
变量2;
定义游标 cur_1并给值
begin
   open cur_1;
      loop
     fetch cur_1 into 变量1,变量2; --依次将游标的值给
      exit when cur_1%notfound; --循环的条件
      if  条件1 then 
               这里还有if 判断,请问下  要跳出这里的 if 继续执行外面的语句用什么?还有,我在这里写的insert语句,好像都没插入到数据库但是,我在测试的时候又是执行了的,请问下可能是什么原因啊?             
           elsif  条件2 then
                    条件满足时 ,这里的insert语句也没有插入数据库         
           else
              return;
          end if;
   end loop;
   close cur_1;
end;

这里还有if 判断,请问下  要跳出这里的 if 继续执行外面的语句用什么?
一般都用continue或者exit来跳出循环,很少听说跳出if,如果你要跳出if就用条件限制进入if中。
还有,我在这里写的insert语句,好像都没插入到数据库但是,我在测试的时候又是执行了的,请问下可能是什么原因啊?
如果你能确保你插入的值没错,那么你不能查到值得原因就是你没有commit造成的。你可以再结束的时候添加一个commit。

  相关解决方案