`
jasonw68
  • 浏览: 153035 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

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

    博客分类:
  • SQL
阅读更多

create or replace procedure pr_zhaozhenlong_loop
/*
名称:在存储过程中执行3种循环语句
功能:利用循环给表中插入数据
调用:
      begin
        -- Call the procedure
        pr_zhaozhenlong_strsql;
      end;
      

create or replace procedure pr_zhaozhenlong_loop
/*
名称:在存储过程中执行3种循环语句
功能:利用循环给表中插入数据
调用:
      begin
        -- Call the procedure
        pr_zhaozhenlong_strsql;
      end;
      
创建人:XXX
创建时间:2007-01-03
*/
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)。如果我们通过创建存储...

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

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

    oracle 存储过程批量提交

    在Oracle数据库中,存储过程是一种重要的数据库对象,它可以包含一系列SQL语句和控制流语句,用于实现复杂的业务逻辑处理。存储过程不仅可以提高应用程序性能,还可以确保数据的一致性和安全性。批量提交是存储过程...

    一个简单的sql循环语句脚本

    在SQL(Structured Query Language)中,循环语句主要用于执行重复性的任务,特别是在处理大量数据或者需要按步骤操作的时候。在数据库编程中,我们通常使用PL/SQL(Oracle)、T-SQL(Microsoft SQL Server)或存储...

    ORACLE存储过程最全教程

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

    oracle存储过程-帮助文档

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

    oracle存储过程学习经典

    在存储过程中执行动态SQL,有两种主要方式: 1. **本地动态SQL**:适用于简单的动态查询构建。 2. **使用DBMS_SQL包**:提供了更强大的功能,如动态执行SQL语句和获取结果集。 #### 存储过程调用Java方法 Oracle ...

    Oracle触发器与存储过程高级编程-第3版itpub.rar

    其次,存储过程(Stored Procedures)是一组为了完成特定功能的SQL语句集合,存储在数据库中并可由应用程序调用执行。它们提供了一种封装和重用SQL代码的方式,增强了代码的安全性,减少了网络通信量,提高了数据库...

    Oracle循环示例

    1. **WHILE循环**:在Oracle PL/SQL中,`WHILE`循环是一种常用的循环结构,用于在满足特定条件时重复执行一组语句。在此示例中,循环将执行10次(因为`i`从1递增到9)。 2. **变量类型**:`INT`和`LONG`是PL/SQL中...

    Oracle+PlSql存储过程

    Oracle PL/SQL存储过程是Oracle数据库中的一种重要编程机制,用于封装复杂的数据库操作逻辑,提高数据库性能,并且便于代码管理和重用。以下是对Oracle存储过程的详细解释。 **Oracle存储过程基础知识** Oracle存储...

    oracle 存储过程 案例

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

    oracle存储过程语法

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

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

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

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

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

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

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

    oracle 存储过程

    Oracle存储过程是数据库管理系统Oracle中的一种重要特性,它允许开发者编写和存储PL/SQL代码,以便在需要时高效地执行。存储过程具有多种优势,包括提高性能、减少网络流量、增强安全性和简化复杂的数据库操作。 1....

    Oracle存储过程详细使用手册

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

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

    存储过程是一组预先编译并存储在数据库中的SQL语句和控制流语句的集合。它可以在数据库服务器上执行,并且可以接受输入参数和返回输出参数。 - **优点**: - 提高性能:存储过程被编译一次后可以多次执行。 - ...

    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 包...

Global site tag (gtag.js) - Google Analytics