`

Oracle中的for和while循环(转载)

阅读更多
有两种方式可以实现条件循环

一、for  变量  in  开始数值...结束数值 loop     end loop;

二、while 条件 loop       end  loop;

loop的使用方式:

一、X := 100;

  LOOP

    X := X + 10;

    IF X > 1000 THEN

      EXIT;

    END IF END LOOP;

    Y := X;

二、 X := 100;

    LOOP

      X := X + 10;

      EXIT WHEN X > 1000;

      X := X + 10;

    END LOOP;

    Y := X;

还有一个GOTO的使用,在后面的过程中会有的,用来产生错误日志。

以下是一个非常简单的过程,用来熟悉循环的!

create or replace procedure count_number is

  /*

  功能描述:计算计算出1到100的和

  t的值为和

  */

  i number(10);

  t number(10);

begin

  /*

    i := 1;

    t := 0;

  --用while+loop实现

    /*begin

      while i <= 100 loop

        t := t + i;

        i := i + 1;

      end loop;

    end;

    */

  i := 1;

  t := 0;

  --用for实现

  begin

    for i in 1 .. 100 loop

      t := t + i;

  

    end loop;

  end;

end count_number;

for循环:

[PL/SQL] 用For Loop 替代Cursor






CURSOR FOR Loop

     FOR  employee_rec in c1  ---employee_rec直接用,不用提前定义

     LOOP

     total_val := total_val + employee_rec.monthly_income;

     END LOOP;

     当使用CURSOR FOR Loop时,不用我手工open cursor close cursor

应用:

begin

         FOR emm IN ( SELECT ro_site, ns_site, product_line, wh_type

                      FROM eis_hq_invhl_mail_data

                     WHERE report_type = 'Detailed' )

        LOOP

        DBMS_OUTPUT.put_line( emm.product_line );

            eis_hq_invhl_pkg.make_mail_detailed_data

                                        ( p_ro_site =>            emm.ro_site,

                                          p_ns_site =>            emm.ns_site,

                                          p_product_line =>       emm.product_line,

                                          p_wh_type =>            emm.wh_type,

                                          p_current_day =>        to_date('2005-11-07','yyyy-MM-dd') );

        END LOOP;

end;

存储过程DIY2----游标与循环

while循环:

WHILE( i <= CEIL( LENGTH( p_clob_data ) / 4000 ))

    LOOP

        v_clob_data := TRIM( SUBSTR( p_clob_data,

                                     i * 4000,

                                     4000 ));

        DBMS_OUTPUT.put_line( SUBSTR( v_clob_data,

                                      0,

                                      255 ));

     

        i := i + 1;

    END LOOP;

///来自互联网///
分享到:
评论

相关推荐

    Oracle中的三种循环用法(Loop、For、While)

    Oracle中的三种循环用法(Loop、For、While) Oracle中的循环语句是PL/SQL语言中...Loop、For、While循环都是Oracle中的基本循环语句,每种循环都有其特点和应用场景。选择正确的循环语句可以提高程序的效率和可读性。

    Oracle 循环

    在本资源中,我们将介绍 Oracle 中的三种循环结构:For 循环、While 循环、Loop 循环,并通过实例代码讲解它们的用法和应用场景。 一、Oracle 中的 GOTO 用法 在 Oracle 中,GOTO 语句用于无条件跳转到指定的标签...

    Oracle三种循环(For、While、Loop)实现九九乘法表

    本文将详细介绍Oracle中的三种循环:FOR循环、WHILE循环和LOOP循环,并通过实现九九乘法表来展示它们的用法。 1. **FOR循环**: FOR循环是预定义的迭代结构,适用于已知循环次数的情况。在Oracle中,FOR循环通常...

    oracle plsql for loop循环 求素数

    本篇文章将详细介绍如何利用PL/SQL中的三种不同类型的循环(`LOOP`、`FOR` 和 `WHILE`)来实现一个简单的应用——找出指定范围内的所有素数。 #### LOOP 循环 `LOOP`循环是一种基本的无限循环结构,它会一直执行...

    Toad for Oracle 中文使用指南

    - **使用代码**:介绍如何在 Toad for Oracle 中编写和运行 SQL 和 PL/SQL 代码。 - **调试 PL/SQL**:提供详细的 PL/SQL 调试教程,帮助用户定位和解决代码问题。 - **使用数据库对象**:解释如何在 Toad 中浏览和...

    SQL SERVER 安装ORACLE provider for OLE DB 的连接服务驱动

    在IT领域,数据库之间的互操作性是至关重要的,特别是在企业级应用中,SQL Server和Oracle数据库的集成常常被需要。本文将详细介绍如何在SQL Server上安装Oracle Provider for OLE DB驱动,以便创建与Oracle数据库的...

    Oracle Provider for OLE DB Developer’s Guide 11g (11.2)

    for Microsoft Windows》是Oracle公司为开发人员提供的一份详细指南,用于在Windows 64位环境中利用Oracle Provider for OLE DB接口进行数据库访问和应用程序开发。OLE DB是Microsoft的一种数据访问接口,它允许...

    Toad for Oracle 12.8简体中文语言包

    总的来说,Toad for Oracle 12.8简体中文语言包为中国的Oracle数据库用户提供了强大的数据库管理和开发环境,同时解决了语言障碍问题,使得这个工具更加适合国内用户使用。如果你是一名Oracle数据库的专业人士,这个...

    Oracle Data Provider for .NET (ODP.NET)

    Oracle 10g 第 2 版 ODAC 和 Oracle Developer Tools for Visual Studio .NET 下载文件 ODTwithODAC1020221.exe 235 MB(247,296,458 字节) ODAC 安装说明 Oracle Developer Tools For Visual ...

    Toad for Oracle中文简易教程

    Toad for Oracle是一款强大的Oracle数据库管理工具,深受数据库管理员(DBAs)和开发人员的喜爱。本教程将向您介绍如何使用Toad for Oracle进行高效、便捷的数据库操作,尤其适用于对中国语言界面有需求的用户。 一...

    SQL SERVER 安装ORACLE provider for OLE DB 的连接服务驱动.zip

    5. **oledb, odp.net4, asp.net4**: 这些文件可能涉及到.NET框架下的Oracle数据访问组件,如ODP.NET(Oracle Data Provider for .NET)和ASP.NET集成,它们是基于.NET的Oracle连接库,适用于Windows应用程序和Web...

    Oracle匿名块三种方法输出乘法表:loop/for/while

    Oracle用三种循环方法输出乘法表,比如loop的用法: m := 1; loop n := 1; loop dbms_output.put(m||'*'||n||'='||m*n||' '); n := n + 1; exit when n &gt; m; end loop; dbms_output.put_line(''); ...

    Oracle 游标循环

    本文将详细介绍Oracle中三种常见的游标循环方式:`Loop`循环、`While`循环以及`For`循环,并通过具体的示例代码来展示每种方法的特点及应用场景。 #### 二、游标基础概念 在深入探讨不同类型的循环之前,我们首先...

    oracle循环游标

    在Oracle数据库中,...综上所述,Oracle中的循环游标、序列、异常处理、ROWID定位和高级游标用法都是开发高效、健壮的数据库应用程序所必需的关键技术。掌握这些技术,可以让你在处理复杂数据库任务时更加得心应手。

    《Reference for Oracle GoldenGate for Windows and UNIX》-官方版

    Oracle GoldenGate是甲骨文公司(Oracle)推出的一款用于数据集成和数据迁移的软件产品。Oracle GoldenGate支持跨平台的数据同步,常用于异构数据库环境,如从Windows到UNIX平台,或者从Oracle数据库到其他数据库...

    Statement Tracer for Oracle

    在Oracle数据库的管理和优化工作中,Statement Tracer for Oracle是一款至关重要的工具。它以其强大的功能和直观的用户界面,为DBA(数据库管理员)和开发人员提供了深入理解SQL执行过程的能力。尽管网络上大多数...

    oracle解决游标多维度循环查询效率过低方案

    多维度查询时通常需要建立多个游标循环,查询效率无法得到保障,现在通过游标和substr()函数相结合的方式提高查询效率

Global site tag (gtag.js) - Google Analytics