- PL/SQL 教程
- PL/SQL - 首页
- PL/SQL - 概述
- PL/SQL - 环境
- PL/SQL - 基本语法
- PL/SQL - 数据类型
- PL/SQL - 变量
- PL/SQL - 常量和字面量
- PL/SQL - 运算符
- PL/SQL - 条件
- PL/SQL - 循环
- PL/SQL - 字符串
- PL/SQL - 数组
- PL/SQL - 过程
- PL/SQL - 函数
- PL/SQL - 游标
- PL/SQL - 记录
- PL/SQL - 异常
- PL/SQL - 触发器
- PL/SQL - 包
- PL/SQL - 集合
- PL/SQL - 事务
- PL/SQL - 日期和时间
- PL/SQL - DBMS 输出
- PL/SQL - 面向对象
- PL/SQL 有用资源
- PL/SQL - 问答
- PL/SQL - 快速指南
- PL/SQL - 有用资源
- PL/SQL - 讨论
PL/SQL - IF-THEN 语句
它是IF控制语句的最简单形式,经常用于决策和改变程序执行的控制流程。
IF语句将一个条件与由关键字THEN和END IF括起来的语句序列关联起来。如果条件为TRUE,则执行这些语句;如果条件为FALSE或NULL,则IF语句不执行任何操作。
语法
IF-THEN语句的语法如下:
IF condition THEN S; END IF;
其中condition是布尔或关系条件,S是简单语句或复合语句。以下是IF-THEN语句的示例:
IF (a <= 20) THEN c:= c+1; END IF;
如果布尔表达式condition计算结果为true,则将执行if语句内部的代码块。如果布尔表达式计算结果为false,则将执行if语句结束后的第一组代码(在结束if之后)。
流程图
示例 1
让我们尝试一个示例,帮助您理解这个概念:
DECLARE
a number(2) := 10;
BEGIN
a:= 10;
-- check the boolean condition using if statement
IF( a < 20 ) THEN
-- if condition is true then print the following
dbms_output.put_line('a is less than 20 ' );
END IF;
dbms_output.put_line('value of a is : ' || a);
END;
/
当在SQL提示符下执行以上代码时,它会产生以下结果:
a is less than 20 value of a is : 10 PL/SQL procedure successfully completed.
示例 2
假设我们有一个表,并且在表中有一些记录,就像我们在PL/SQL变量类型中创建的那样
DECLARE
c_id customers.id%type := 1;
c_sal customers.salary%type;
BEGIN
SELECT salary
INTO c_sal
FROM customers
WHERE id = c_id;
IF (c_sal <= 2000) THEN
UPDATE customers
SET salary = salary + 1000
WHERE id = c_id;
dbms_output.put_line ('Salary updated');
END IF;
END;
/
当在SQL提示符下执行以上代码时,它会产生以下结果:
Salary updated PL/SQL procedure successfully completed.
plsql_conditional_control.htm
广告