`
xiangxuehai_jiaer
  • 浏览: 90131 次
  • 性别: 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 程序设计 本章主要重点:  PL/SQL概述  PL/SQL块结构  PL/SQL流程  运算符和表达式  游标  异常处理  数据库存储过程和函数  包  触发器

    PL/SQL程序设计

    PL/SQL流程 运算符和表达式 游标 异常处理 数据库存储过程和函数 包 触发器 §1.2 SQL与PL/SQL §1.2.1 什么是PL/SQL? PL/SQL是 Procedure Language & Structured Query Language 的缩写。ORACLE的SQL是支持ANSI...

    sql、pl/sql教程.rar

    SQL: 结构化查询语言(Structured Query ...PL/SQL: Oracle 扩展的SQL语言,具有完整的流程控制定义。 SQL*Plus: Oracle 常用的工具,用来识别SQL语言和编写、执行PL/SQL代码,它与Oracle 数据库管理系统紧密结合。

    Oracle PL/SQL语言入门

    PL/SQL的出现正是为了解决这一问题,PL/SQL是一种过程化语言,属于第三代语言,它与C、 C++、Java等语言一样关注于处理细节,可以用来实现比较复杂的业务逻辑。本文主要介绍PL/SQL的编程基础,以使入门者对PL/SQL...

    PL/SQL编程技术详解

    详细介绍了PL/SQL编程基础,比如事务控制命令、PL/SQL流程控制,PL/SQL的异常处理,游标的使用,PL、SQL编程对象等。

    PL/SQL语言的简介

    PL/SQL语言的简介 程序结构 流程控制 异常处理 过程与函数 游标 程序包 触发器

    PL-SQL编程.ppt

    oracle plsql语言 第一节 PL/SQL块的组成 第二节 事务控制命令 第三节 PL/SQL流程控制 第四节 游标的使用 第五节 PL/SQL的异常处理 第六节 PL/SQL示例 第七节 PL/SQL编程对象

    Oracle PL SQL

    走进Oracle、认识PL/SQL、数据表的基本操作、表中数据的基本操作、数据的基本查询、查询中函数的使用、数据表的高级查询、索引及视图的使用、数据类型、流程控制、游标、存储过程和函数、触发器、异常处理、事务和锁...

    SQL and Pl/SQL培训文档

    PL/SQL(Procedural Language/SQL): 在SQL的基础上,增加了过程化处理. 比如sql*plus, developer 6i 和标准的SQL相比,PL/SQL有自己特有的一些特性 变量定义   流程结构控制   对象类型 存储过程和函数

    PL/SQL学习语法及应用

    结构化查询语言(Structured Query Language,简称...PL/SQL 的出现正是为了解决这一问题,PL/SQL 是一种过程化语言,属于第三代语言,它与 C,C++,Java 等语言一样关注于处理细节,因此可以用来实现比较复杂的业务逻辑。

    oracle PL/SQL

    SQL与编程语言之间的不同...而PL/SQL是结构化的和过程化的结合体,而且最为重要的是,在用户执行多条SQL语句时,每条SQL语句都是逐一的发送给数据库,而PL/SQL可以一次性将多条SQL语句一起发送给数据库,减少网络流量

    PL/SQL 教程 PPT

    第一节 程序块结构语言PL/SQL的组成 定义部分 定义部分 定义部分 定义部分 可执行部分 可执行部分 可执行部分: SQL语句 第二节 事务控制命令 事务提交(COMMIT) ...第三节 PL/SQL的流程控制 条件控制

    PL-SQL编程 介绍

    PL-SQL语法及游标等的简单介绍 第一节 PL/SQL块的组成 第二节 事务控制命令 第三节 PL/SQL流程控制 第四节 游标的使用 第五节 PL/SQL的异常处理 第六节 PL/SQL示例 第七节 PL/SQL编程对象

    PL/SQL 报表的开发流程及html 格式的输出方法

    PL/SQL 报表的开发流程及html 格式的输出方法。 简单的实例,估计大家都能看懂的。

    oracle pl/sql

    介绍PL/SQL程式結構 常用資料型態及變數宣告 指定變數值與變數初始化 SELECT...INTO... 運算 常用的 Oracle Build-in Function 流程控制結構 迴圈

    Oracle PL-SQL编程详解.pdf

    本⽂⽬录: 1. PL/SQL 程序设计简介 2. PL/SQL块结构和组成元素 3. PL/SQL流程控制语句 4. 把游标说透 5. 异常错误处理 6. 把过程与函数说透 7. 程序包的创建与应⽤ 8. 把触发器说透

    pl sql 编程教学

    PL/SQL块的组成介绍;事务控制命令;PL/SQL流程控制;游标的使用;PL/SQL的异常处理;;PL/SQL示例;PL/SQL编程对象

Global site tag (gtag.js) - Google Analytics