`
蓝色飞扬
  • 浏览: 94942 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle存储过程中执行3种循环语句

阅读更多

本文转载自:http://hi.baidu.com/wkcs520/blog/item/7e06a0514fe3f9868d543027.html

 

create or replace procedure pr_zhaozhenlong_loop
/*
名称:在存储过程中执行3种循环语句
功能:利用循环给表中插入数据
调用:
       begin
         -- Call the procedure
         pr_zhaozhenlong_strsql;
       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存储过程学习经典入门

    CREATE PROCEDURE 语句是用来创建 Oracle 存储过程的语句,变量声明是用来声明变量的语句,控制语句是用来控制流程的语句,循环语句是用来循环执行的语句。 关于 Oracle 存储过程的若干问题备忘 在学习 Oracle ...

    oracle存储过程

    存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令。 定义总是很抽象。存储过程其实就是能完成一定操作的一组SQL语句,只不过这组语句是放在数据库中的(这里我们只谈SQL Server)。如果我们通过创建存储...

    oracle 存储过程批量提交

    在Oracle存储过程中实现批量提交通常涉及到循环结构以及条件判断。以下是一个典型的示例代码段: ```sql DECLARE i INTEGER; BEGIN FOR v_Opr IN ( -- 查询或获取需要更新的数据集 SELECT * FROM your_table )...

    oracle存储过程-帮助文档

    Oracle存储过程是数据库管理系统中的一种重要特性,它允许开发者编写一系列SQL语句和PL/SQL块,形成可重复使用的代码单元。这篇博客“oracle存储过程-帮助文档”可能提供了关于如何创建、调用和管理Oracle存储过程...

    ORACLE存储过程最全教程

    Oracle存储过程是数据库管理系统Oracle中的一个关键特性,它允许开发者编写一组预编译的SQL和PL/SQL语句,以实现特定的业务逻辑或数据库操作。这篇教程将深入讲解Oracle存储过程的各个方面,帮助你从基础到高级全面...

    oracle存储过程学习经典

    ### Oracle存储过程学习经典 #### Oracle存储过程基础知识与实践 Oracle存储过程是SQL与PL/SQL结合...通过深入研究这些知识点,可以充分发挥Oracle存储过程在现代数据库管理系统中的作用,提高数据处理效率和安全性。

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

    总的来说,使用存储过程和FOR LOOP循环在Oracle数据库中批量插入数据是一种高效的方法。然而,考虑到不同工具的兼容性,选择合适的执行环境和调整代码结构都是保证程序顺利运行的关键。对于开发和调试过程,推荐使用...

    oracle 存储过程 案例

    Oracle存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写一系列的SQL和PL/SQL语句,形成一个可重复使用的程序单元。这个“Oracle存储过程案例”提供了丰富的学习材料,帮助用户从入门到精通掌握...

    oracle存储过程语法

    Oracle 存储过程是 Oracle 数据库中的一种程序单元,用于实现复杂的业务逻辑和数据处理。存储过程可以提高数据库的安全性、可维护性和性能。 1. 创建存储过程的语法 创建存储过程的基本语法为:`CREATE OR REPLACE...

    oracle存储过程总结.doc

    While 循环是 Oracle 存储过程中的一种循环结构,使用 While 语句可以根据条件执行操作。例如: ```sql create or replace procedure test(i in number) as begin while i i := i + 1; end LOOP; end test; ``` ...

    oracle存储过程学习经典(实例)

    Oracle存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写一系列的SQL和PL/SQL语句,形成一个可重用的代码块。这个"Oracle存储过程学习经典(实例)"资源显然是为初学者设计的,旨在帮助他们掌握如何...

    Oracle存储过程详细使用手册

    Oracle 中有两种类型的循环语句:`FOR` 循环和 `WHILE` 循环。 (1) FOR 循环 `FOR` 循环可以用来遍历游标或数组。语法为:`FOR variable IN cursor LOOP ... END LOOP;` 例如,以下是一个使用 `FOR` 循环遍历游标...

    oracle存储过程学习资料

    Oracle存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写一系列复杂的SQL和PL/SQL语句,形成可重用的代码块。这些代码块可以执行数据处理、事务控制、错误处理等多种任务,极大地提高了数据库应用...

    关于oracle存储过程的基本语法

    Oracle存储过程是一种在Oracle数据库中存储的一段可执行的SQL代码或PL/SQL代码,它可以帮助开发人员实现复杂的业务逻辑处理,提高应用程序的性能,并简化数据库管理。 #### 二、Oracle存储过程的基本结构 存储过程...

    ORACLE存储过程性能优化技巧

    Oracle存储过程是数据库管理系统中的一种重要工具,用于封装一系列的SQL和PL/SQL语句,以执行特定的任务。性能优化是数据库管理的核心任务之一,尤其是对于处理大量数据的企业级应用,存储过程的优化能显著提升系统...

    oracle 存储过程学习总结

    Oracle存储过程学习总结涵盖了Oracle中存储过程的编写与应用,涉及到字符串处理、游标使用、PL/SQL编程等方面的知识点。 首先,字符串处理是存储过程中常见的操作。文章中提到了多个内置函数,如CONCAT用于连接字符...

    Oracle存储过程、游标、函数的详解

    通过以上对Oracle存储过程、游标和函数的详细介绍,我们可以看到这些特性为Oracle数据库提供了一种强大而灵活的方式来处理数据。掌握这些技术对于开发高效的应用程序至关重要。在未来的学习和实践中,我们应该不断...

    oracle的一个简单存储过程实例

    Oracle存储过程是数据库管理系统中的一种重要特性,它允许开发者编写包含一系列SQL语句和PL/SQL块的可重用代码段。在这个“Oracle的一个简单存储过程实例”中,我们可以看到如何在Oracle环境中创建、调用和管理存储...

    Oracle存储过程、触发器

    Oracle存储过程是一组预编译的SQL和PL/SQL语句,存储在数据库服务器上,可以按需调用执行。它们提供了封装和重用代码的能力,提高了性能,并减少了网络流量。创建存储过程的基本语法如下: ```sql CREATE OR ...

    Oracle+PlSql存储过程

    Oracle存储过程是由一系列SQL和PL/SQL语句组成的程序单元,它可以在数据库服务器端执行。存储过程可以接受输入参数,返回输出结果,甚至处理异常。它们被编译一次,然后存储在数据库中,后续调用时只需执行已编译的...

Global site tag (gtag.js) - Google Analytics