条件结构

一、IF-THEN语句

IF-THEN语句是最简单的IF语句。

语法:

IF condition THEN
Statements
END IF;

例子:

declare
v_score number := &成绩;
begin
if v_score >= 60 then
dbms_output.put_line('合格');
end if;
end;

二、IF-THEN-ELSE语句

与IF-THEN语句相比,在IF-THEN-ELSE语句则给出了在不满足条件时程序的外理情况。

语法:

IF condition THEN
Statements1
ELSE
Statements2
END IF;

例子:

declare
v_score number := &成绩;
begin
if v_score >= 60 then
dbms_output.put_line('合格');
else
dbms_output.put_line('不合格');
end if;
end;

三、IF-THEN-ELSIF语句

该语句是当存在多个不同条件时使用,注意此时是ELSIF,而不是ELSEIF。

语法:

IF condition1 THEN
Statements1
ELSIF condition2 THEN
Statements2
ELSE
Statements3
END IF;

例子:

declare
v_score number := &成绩;
begin
if v_score >= 90 then
dbms_output.put_line('优秀');
elsif v_score >= 60 then
dbms_output.put_line('合格');
else
dbms_output.put_line('不合格');
end if;
end;

四、CASE 语句

CASE语句是在Oracle 9i 版本后引入的控制语句结构。

语法:

CASE variable
WHEN value1 THEN statements1;
WHEN value2 THEN statements2;
……
WHEN valuen THEN statementsn;
[ELSE else_statements;]
END CASE;

例子:

declare
v_score number := &成绩;
begin
case v_score
when 1 then dbms_output.put_line('星期一');
when 2 then dbms_output.put_line('星期二');
when 3 then dbms_output.put_line('星期三');
when 4 then dbms_output.put_line('星期四');
when 5 then dbms_output.put_line('星期五');
when 6 then dbms_output.put_line('星期六');
when 7 then dbms_output.put_line('星期日');
else dbms_output.put_line('未知');
end case;
end;

循环结构

一、LOOP循环

LOOP循环是最简单的一种循环。需使用 EXIT 语句来退出循环。

语法:

LOOP
statements;
END LOOP;

例子:

declare
v_num number := 1;
begin
loop
dbms_output.put_line(v_num);
v_num := v_num+1;
if v_num>15 then
exit;
end if;
end loop;
end;

二、WHILE-LOOP 循环

WHILE-LOOP 循环是在执行循环时,先判断循环条件是否成立,当条件为TRUE时,才开始执行循环体内的语句。

语法:

WHILE condition LOOP
statements;
END LOOP;

例子:

declare
v_num number := 1;
begin
while v_num<=15 loop
dbms_output.put_line(v_num);
v_num := v_num+1;
end loop;
end;

三、FOR-LOOP 循环

与WHILE-LOOP 循环相比,FOR-LOOP 循环可以清楚的知道循环的次数,并且FOR 循环还确定了循环的范围。

语法:

FOR loop_count IN [REVERSE] lower_bound..height_bound LOOP
statements;
END LOOP;

例子:

declare

begin
for i in 1..15 LOOP
dbms_output.put_line(i);
END LOOP;
end;

PL/SQL 流程控制语句-条件结构,循环结构的更多相关文章

  1. Oracle数据库之PL/SQL流程控制语句

    Oracle数据库之PL/SQL流程控制语句 在任何计算机编程语言(如C,Java,C#等)都有各种流程控制语句,同样,在PL/SQL中也存在这样的流程控制结构. 几种常见的流程控制结构: 一.条件结 ...

  2. [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)

    原文:[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程详解之三: PL/SQL流程控制语句(不给规则,不成方圆) ...

  3. PL/SQL流程控制语句

    PL/SQL流程控制语句介绍PL/SQL的流程控制语句, 包括如下三类:控制语句: IF 语句循环语句: LOOP语句, EXIT语句顺序语句: GOTO语句, NULL语句①if语句 IF < ...

  4. oracle数据库之PL/SQL 流程控制语句

    介绍 PL/SQL 的流程控制语句, 包括如下三类: 1.控制语句: IF 语句 2.循环语句: LOOP 语句, EXIT 语句 3.顺序语句: GOTO 语句, NULL 语句 一 条件语句 IF ...

  5. 二十五、oracle pl/sql进阶--控制结构(分支,循环,控制)

    一.pl/sql的进阶--控制结构在任何计算机语言(c,java,pascal)都有各种控制语句(条件语句,循环结构,顺序控制结构...),在pl/sql中也存在这样的控制结构.在本部分学习完成后,希 ...

  6. java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)

    JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...

  7. day_4流程控制之分支结构循环结构及for循环

    复习一下昨天的内容 1:变量的命名规范 只能由数字 字母 及下划线组成 不能以数字开头 不能与系统关键字重名 _开头有特殊含义 __开头__结尾的变量是魔法变量 支持大小驼峰 ,但建议使用下划线连接语 ...

  8. js值类型转换(boolean/String/number),js运算符,if条件,循环结构,函数,三种弹出框

    js值类型转换 number | string | boolean boolean类型转换 num = 0; var b1 = Boolean(num); console.log(b1) 转化为数字类 ...

  9. Python基础2:流程控制语句 while / for循环

    [ while 循环 ] 如果要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+ ...

随机推荐

  1. Find The Multiple

    算法:深搜(水题): Given a positive integer n, write a program to find out a nonzero multiple m of n whose d ...

  2. Mysql学习(慕课学习笔记7)修改数据表(下)

    添加主键约束 ALTER TABLE tb1_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,…….) ...

  3. Python学习笔记九-文件读写

    1,读取文件: f=open('目录','读写模式',encoding='gbk,error='egiong') 后三项可以不写但是默认是' r'读模式:open函数打开的文件对象会自动加上read( ...

  4. 【5】python核心编程 第八章-条件和循环

    1.=== range() 的完整语法=== Python 提供了两种不同的方法来调用 range() . 完整语法要求提供两个或三个整数参数: range(start, end, step =1) ...

  5. AngularJS中的控制器示例

    <!doctype html> <html ng-app="myApp"> <head> <script src="C:\\Us ...

  6. 启动安卓模拟器报错 emulator: ERROR: x86_64 emulation currently requires hardware acceleration! CPU acceleration status:HAXM must be updated(version 1.1.1<6.0.1) 解决办法

    启动安卓模拟器报错 emulator: ERROR: x86_64 emulation currently requires hardware acceleration!  CPU accelerat ...

  7. delphi 打开文件夹并定位到一个文件(关键是/select参数)

    strFileName := FcxLV[nIndex].Items.Item[FcxLV[nIndex].ItemIndex].SubItems.Strings[0]; //路径  ShellExe ...

  8. cmake编译(编译目标)x86或x64

    if(CMAKE_CL_64)    #CMAKE的内建变量,如果是true,就说明编译器的64位的,自然可以编译64bit的程序 set(ADDRESS_MODEL 64) set(NODE_TAR ...

  9. 06_Elasticsearch 批量获取mget

    06_Elasticsearch 批量获取mget 现在有: http://192.168.32.81:9200/bank/bank_account/1 http://192.168.32.81:92 ...

  10. 自己实现的简单MVC框架(类似Struts2+Spring)

    一.框架简介 本框架是一个类似于Struts2+Spring的框架,目的在于个人钻研和技术分享,将流行技术框架Struts2.Spring中使用到的主要技术以较为简化的方式实现出来,给大家一个更直观的 ...