`
尘枉_yjava
  • 浏览: 71293 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

oracle存储过程的3中循环

 
阅读更多
create or replace procedure pr_strloop
/*
名称:在存储过程中执行3种循环语句
功能:利用循环给表中插入数据
调用:
       begin
         -- Call the procedure
         pr_strloop;
       end;
*/
is
      i int;
begin
      i :=1;
      loop
          insert into tb_zhaozhenlong(rpt_date ,dept_id,item,qty) values(to_date('2007-01-01','yyyy-MM-dd'),'D'||i,'I'||i,round(i*100/3,3));
          exit when i =10;
          i :=i+1;
      end loop;
      --
      i :=1;
      while i<=5 loop
          insert into tb_zhaozhenlong(rpt_date ,dept_id,item,qty) values(to_date('2007-01-02','yyyy-MM-dd'),'D'||i,'I'||i,round(i*200/3,3));
          i :=i+1;
      end loop;
      --如果指定了reverse选项,则循环控制变量会自动减1,否则自动加1
      for j in reverse   1..10 loop
          --insert into tb_zhaozhenlong(rpt_date ,dept_id,item,qty) values(to_date('2007-01-03','yyyy-MM-dd'),'D'||j,'I'||j,round(j*300/3,3));
          insert all --first,不会被重复插入
          when i <> 2 then into tb_zhaozhenlong(rpt_date ,dept_id,item,qty)
          else into tb_temp_zhaozhenlong(rpt_date ,dept_id,item,qty)--如果两个表结构完全一样,则列举不用列名
          select to_date('2007-01-02','yyyy-MM-dd')as rpt_date,'D'||j as dept_id,'I'||j as item,round(j*300/3,3) as qty from dual;
      end loop;
      commit;
      --???????
      <<outer_zzl>>--??????
      for x in   1..10 loop
          <<inner_zzl>>
          for y in 1..100 loop
          i :=x*y;
          exit outer_zzl when i=500;
          exit when i =300;
          end loop inner_zzl;
          --<<inner_zzl>>
      end loop outer_zzl;
      --<<outer_zzl>>
end;
/
分享到:
评论

相关推荐

    oracle 存储过程批量提交

    oracle 存储过程批量提交

    oracle存储过程语法

    BEGIN END 存储过程名字 2.SELECT INTO STATEMENT 将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条 记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND) 例子: BEGIN SELECT col1,...

    oracle存储过程

    oracle 存储过程的基本语法 1.基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字 ( 参数1 IN NUMBER, 参数2 IN NUMBER ) IS 变量1 INTEGER :=0; 变量2 DATE; BEGIN END 存储过程名字 2.SELECT INTO ...

    Oracle数据库存储过程技术文档.doc

    第一章 oracle存储过程概述 2 1.1 存储过程基本结构(PROCEDURE) 3 1.1.1创建存储过程 3 1.1.2 存储过程删除 5 1.1.3 调用存储过程 5 1.2存储函数(FUNCTIONE) 6 1.2.1 创建存储函数 6 1.2.2 删除存储函数 7 1.3 包...

    oracle存储过程实现字符串截取

    例如:字段为1,2,3,4,5 截取之后为 1 2 3 4 5

    oracle 批量插入数据存储过程

    oracle 批量插入数据存储过程。亲测好用。支持 plsql ,toad,等数据库分析软件。主要包括变量的定义,循环及游标的使用等, 亲测好用

    ORACLE 存储过程返回结果集,拼接为字符串输出为clob

    CLOB变量需要dbms_lob.createtemporary,临时表空间中,建立临时LOB。 大数据量,返回值虽然是CLOB,依然会报错; CLOB变量需要dbms_lob.createtemporary,临时表空间中,建立临时LOB。 大数据量,返回值虽然是CLOB...

    Oracle_存储过程的基本语法

    3.1 oracle 存储过程的基本语法 3.1.1 基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字 ( 参数1 IN NUMBER, 参数2 IN NUMBER ) IS 变量1 INTEGER :=0; 变量2 DATE; BEGIN END 存储过程名字 3.1.2 ...

    存储过程(循环插入数据)

    使用for loop向表中批量插入数据,推荐使用plsql执行,Dbvisualizer语句执行会出错

    Oracle存储过程实例使用显示游标

    存储过程调用 Function 并使用 游标循环得到每一条数据然后更新本条数据。初学代码写的不是很好,希望能给初学存储过程的兄弟们提供一点借鉴哦。

    ORACLE 存储过程入门范例

    1、创建存储过程 2、变量赋值 3、判断语句 4、For 循环 5、While 循环 6、数组 7.游标的使用 ....

    Oracle存储过程循环语法实例分析

    主要介绍了Oracle存储过程循环语法,结合实例形式分析了Oracle基本的while、for循环使用方法,具有一定参考借鉴价值,需要的朋友可以参考下

    oracle数组存储过程批量插入

    今天做了一个关于短消息批量删除的功能, ... 所以就决定用 数组作为存储过程的参数进行传值,在存储过程中批量删除。说实话这个选择有点得不偿失,本来以为上午就能搞定,谁知道从摸索到实现,居然发了大半天时间。

    oracle_存储过程

    ORACLE 存储过程 三种 循环,安全全面解析了插入的三种技巧

    Oracle技术_5分钟会用存储过程_存储过程简单实例

    Oracle技术_5分钟会用存储过程_存储过程简单实例 包括建表及初始化数据,直接运行就可以用 包含循环、条件、增改查、参数传入、变量赋值、java调用等 http://blog.csdn.net/ooppookid/article/details/41206963

    oracle存储过程-函数-语法-大全-详解.pdf

    Oracle 存储过程总结 1、创建存储过程 2、变量赋值 3、判断语句 4、For 循环 5、While 循环 6、数组 7.游标的使用

    oracle存储过程、游标、函数、PL/SQL块

    包含oracle存储过程的增、删、查、改 %type、%rowtype的使用 自定义函数 PL/SQL块

    存储过程.doc

    Oracle存储过程基本语法 存储过程.oracle存储过程语法 1 、判断语句: 2 、For 循环 (1) 循环遍历游标 (2) 循环遍历数组

Global site tag (gtag.js) - Google Analytics