`
xiangxuehai_jiaer
  • 浏览: 91711 次
  • 性别: Icon_minigender_2
  • 来自: 西安
社区版块
存档分类
最新评论

PL/SQL流程

 
阅读更多

一、条件语句

SQL> declare

  2    v_eno empl.eno%type:=&empno;

  3    v_sal empl.sal%type;

  4    v_comment varchar2(25);

  5  begin

  6    select sal into v_sal from empl where eno=v_eno;

  7      if v_sal<1500 then

  8        v_comment:='Fairly less';

  9      elsif v_sal<3000 then

 10        v_comment:='A little more';

 11      else

 12        v_comment:='Lots of salary';

 13      end if;

 14    dbms_output.put_line(v_comment);

 15  end;

 16  /

输入 empno 的值:  1001

原值    2:   v_eno empl.eno%type:=&empno;

新值    2:   v_eno empl.eno%type:=1001;

Lots of salary

二、case表达式

SQL> declare

  2    v_grade char(1):=upper('&p_grade');

  3    v_appraisal varchar2(20);

  4  begin

  5    v_appraisal:=

  6    case v_grade

  7      when 'A' then 'excellent'

  8      when 'B' then 'very good'

  9      when 'C' then 'good'

 10      else 'no such grade'

 11    end;

 12    dbms_output.put_line('grade:'||v_grade||',appraisal:'||v_appraisal);

 13  end;

 14  /

输入 p_grade 的值:  a

原值    2:   v_grade char(1):=upper('&p_grade');

新值    2:   v_grade char(1):=upper('a');

grade:A,appraisal:excellent

三、循环

1loop循环

SQL> declare

  2    int number(2):=0;

  3  begin

  4    loop

  5      int:=int+1;

  6      dbms_output.put_line('int的当前值为:'||int);

  7      exit when int=10;

  8    end loop;

  9  end;

 10  /

int的当前值为:1

int的当前值为:2

int的当前值为:3

int的当前值为:4

int的当前值为:5

int的当前值为:6

int的当前值为:7

int的当前值为:8

int的当前值为:9

int的当前值为:10

2while循环

SQL> declare

  2    int number;

  3  begin

  4    int:=1;

  5    while int<=10 loop

  6      dbms_output.put_line('int的当前值为:'||int);

  7      int:=int+1;

  8    end loop;

  9  end;

 10  /

int的当前值为:1

int的当前值为:2

int的当前值为:3

int的当前值为:4

int的当前值为:5

int的当前值为:6

int的当前值为:7

int的当前值为:8

int的当前值为:9

int的当前值为:10

3、数字式循环

SQL> declare

  2    int number;

  3  begin

  4      for int in 1..10 loop

  5      dbms_output.put_line('int的当前值为:'||int);

  6      end loop;

  7  end;

  8  /

int的当前值为:1

int的当前值为:2

int的当前值为:3

int的当前值为:4

int的当前值为:5

int的当前值为:6

int的当前值为:7

int的当前值为:8

int的当前值为:9

int的当前值为:10

四、goto

SQL> declare

  2    v_counter number:=1;

  3  begin

  4    loop

  5      dbms_output.put_line('v_counter的当前值为:'||v_counter);

  6      v_counter:=v_counter+1;

  7    if v_counter>10 then

  8    goto l_endofloop;

  9    end if;

 10    end loop;

 11    <<l_endofloop>>

 12    dbms_output.put_line('v_counter的当前值为:'||v_counter);

 13  end;

 14  /

v_counter的当前值为:1

v_counter的当前值为:2

v_counter的当前值为:3

v_counter的当前值为:4

v_counter的当前值为:5

v_counter的当前值为:6

v_counter的当前值为:7

v_counter的当前值为:8

v_counter的当前值为:9

v_counter的当前值为:10

v_counter的当前值为:11

 

分享到:
评论

相关推荐

    oracle笔记pl/sql流程控制

    oracle笔记pl/sql流程控制,有具体的代码案例,流程控制的知识点笔记!

    pl/sql最新中文手册

    PL/SQL是Oracle数据库系统中的一个关键组成部分,它是一种过程化语言,专为数据库操作设计。这个"PL/SQL最新中文手册"显然是一份详细解释PL/SQL 7.0版本的指南,对于学习和精通Oracle数据库编程至关重要。以下是手册...

    oracle10g_pl/sql

    Oracle 10g PL/SQL 是Oracle数据库系统中用于创建和管理存储过程、函数、触发器等数据库对象的编程语言。本教程旨在为初学者提供一个全面的学习平台,同时也为经验丰富的开发者提供参考资料。PL/SQL是Oracle特有的...

    pl/sql64位

    总的来说,64位的PL/SQL Developer是Oracle开发人员的一个强大工具,它可以提供更高效的工作流程,减少因内存限制带来的问题,同时保持易于使用的界面和丰富的功能集。如果你在处理大型数据库或者需要更高的性能,...

    PL/SQL 详解

    PL/SQL流程控制语句 PL/SQL支持多种流程控制语句,包括条件判断语句(如IF-THEN-ELSE)、循环语句(如FOR LOOP、WHILE LOOP)等。这些语句使得开发者可以根据不同的条件执行不同的代码路径,增强了程序的灵活性。 ...

    PL/SQL 程序设计

    PL/SQL 程序设计 本章主要重点:  PL/SQL概述  PL/SQL块结构  PL/SQL流程  运算符和表达式  游标  异常处理  数据库存储过程和函数  包  触发器

    oracle pl/sql从入门到精通 配套源代码

    1. **基础操作**:包括简单的SQL查询、变量声明、流程控制(循环、分支结构)以及异常处理。 2. **存储过程和函数**:这些是PL/SQL的核心组成部分,它们封装了一系列操作,可以被多次调用,提高代码复用性。书中...

    PL/SQL VCS插件安装包+PL/SQL

    PL/SQL VCS插件是为开发者提供的一种增强工具,它与PL/SQL Developer整合,目的是为了更好地管理和控制Oracle数据库中的SQL脚本和存储过程的版本。这个安装包结合了Version Control System (VCS)的功能,如Visual ...

    Oracle PL/SQL程序设计(第5版)(上下册)

    ### Oracle PL/SQL程序设计(第5版)(上下册)知识点概述 #### 一、PL/SQL编程基础 - **PL/SQL简介**:PL/SQL(Procedural Language for SQL)是Oracle数据库的一种内嵌式过程化语言,用于增强SQL的功能。它允许在SQL...

    PL/SQL 基本知识

    PL/SQL是Oracle数据库系统中的一个核心组件,全称为“Procedural ...而`jbpm.sql`文件可能包含的流程管理相关代码,正是PL/SQL在企业实际应用中的具体体现,它展示了如何通过PL/SQL来实现复杂的业务逻辑和数据操作。

    pl/sql快捷插件

    而“pl/sql快捷插件”则是针对PL/SQL Developer的一个增强工具,它旨在提高用户的开发效率和工作流程。 PL/SQL插件通常包含一系列扩展功能,如代码片段、自动化脚本、自定义快捷键、增强型代码提示以及更高效的...

    Oracle PL/SQL实例编程(PL/SQL经典书籍)

    Oracle PL/SQL是一种强大的编程语言,它将数据库管理和应用程序逻辑紧密结合起来,是Oracle数据库系统中的核心组件之一。这本书“Oracle PL/SQL实例编程”显然旨在深入讲解如何利用PL/SQL进行实际开发工作,通过实例...

    PL/SQL下载

    1. **基础语法**:理解PL/SQL的基本数据类型、变量声明、流程控制结构等。 2. **函数和过程**:掌握如何定义和调用自定义函数和过程。 3. **游标**:了解如何使用游标处理结果集。 4. **异常处理**:学习如何编写...

    PL/SQL编程基础知识

    PL/SQL(Procedural Language for SQL)是一种过程化语言,它结合了SQL的数据操纵功能和过程化语言的控制结构,使用户能够灵活地控制数据操作流程。作为Oracle数据库的核心组成部分之一,PL/SQL在数据库应用程序开发...

    PL/SQL安装包

    1. **结构化**:PL/SQL支持流程控制语句(如IF-THEN-ELSE,CASE,WHILE,FOR循环)和异常处理,使得开发者能够编写复杂的逻辑代码。 2. **集成性**:PL/SQL直接嵌入到Oracle数据库中,可以创建存储过程、函数、...

    Oracle Database 12c PL/SQL开发指南 实例源代码

    1. **PL/SQL基础**:PL/SQL的基础语法,如变量声明、数据类型、流程控制语句(如IF-THEN-ELSIF,FOR循环,WHILE循环)、异常处理(BEGIN-EXCEPTION-END结构)等。 2. **函数与过程**:如何定义和调用用户自定义的...

    PL/SQL入门到精通书的源代码

    PL/SQL是Oracle数据库系统中的过程式语言,它结合了SQL的数据操作能力与结构化编程语句,使得开发者能够创建复杂的数据处理逻辑和业务规则。本资料“PL/SQL入门到精通书的源代码”是一份针对初学者到高级用户的实践...

    Oracle PL/SQL学习官方教材

    2. **流程控制**:PL/SQL提供了多种流程控制结构,如条件语句(IF-THEN-ELSIF-ELSE)、循环(WHILE、FOR、LOOP)、CASE表达式,以及异常处理(EXCEPTION)。这些结构使得程序可以根据不同条件执行不同的代码段。 3....

    Oracle PL/SQL 实例精解(第4版涵盖Oracle 11g)+源码脚本

    1. **基础语法**:PL/SQL的基础包括声明变量、常量、游标、记录类型以及控制流程语句(如IF-THEN-ELSIF,WHILE,FOR循环)。书中会详细介绍如何编写简单的PL/SQL块,包括声明部分、执行部分和异常处理部分。 2. **...

    pl/sql开发

    1.5 **PL/SQL流程控制** 流程控制语句包括条件语句(IF...THEN...ELSIF...ELSE...END IF)、循环语句(WHILE、FOR、LOOP)以及分支语句(GOTO),用于控制程序的执行流程。 1.6 **PL/SQL的异常处理** 异常处理...

Global site tag (gtag.js) - Google Analytics