PL/SQL If2025年4月6日 | 阅读6分钟 引言PL/SQL 支持条件语句和迭代语句等编程语言功能。其编程结构类似于在 Java 和 C++ 等编程语言中的使用方式。PL/SQL 提供了一系列 IF 语句或语句条件。有不同类型的条件语句,可使您的代码高效可靠
IF-THEN 语句:条件控制语句最简单形式是 IF-THEN 语句。在此语句中,如果条件为真,则执行语句。 语法:(IF-THEN 语句) 在上述语法中,condition 是一个变量、常量或表达式。在此,如果 IF 语句为 TRUE,则执行 IF 语句,如果条件计算结果为 FALSE 或 NULL,则不处理这些语句,并将控制传递到 END IF 子句之外。 ![]() 上图显示了 IF 语句的示意流程。 示例:编写一个程序,使用简单的 IF 语句检查给定的数字是否为偶数。 说明:在上述示例中,执行时会提示用户输入一个值,然后计算该数字的模数,如果余数为 0,则打印消息“n 为偶数”,否则它不会显示任何内容。 保存文件并运行它之后,我们将获得以下输出。 输出 Enter the value for N: 8 Old 8: N := & N; New 8: N =: 8; 8 is even PL/SQL procedure successfully completed. IF-THEN-ELSE 语句:此语句根据 IF 和 THEN 关键字之间的条件实现逻辑。在此,如果条件为真,则执行 IF 条件之后的语句,否则执行 ELSE 块语句。 语法:(IF-THEN-ELSE 语句) 在上述语法中,如果条件计算结果为 TRUE,则执行 THEN 和 ELSE 之间的语句,如果条件为 FALSE 或 NULL,则执行 ELSE 关键字和 END IF 关键字之间的语句。 ![]() 上图显示了 IF -THEN-ELSE 语句的示意流程。 示例:编写一个 PL/SQL 程序,使用简单的 IF -THEN-ELSE 语句检查给定的数字是否为偶数。 说明:在上述示例中,执行时会提示用户输入一个数字值,然后计算该数字的模数,如果余数为 0,则打印消息“N 为偶数”,否则它不会显示“N 为偶数”。 保存文件并运行它之后,我们将获得以下输出。 输出 Enter the value for N: 7 Old 7: N := & 7; New 7: N =: 7; 7 is odd PL/SQL procedure successfully completed. 嵌套的 IF-THEN-ELSE 语句:您还可以在另一个 if 语句中嵌套 IF 语句,即您可以在 THEN 和 ELSE 子句中包含 IF 语句。 语法:(嵌套的 IF-THEN-ELSE 语句) 当您希望在 condition1 为 TRUE 或 condition2 为 TRUE 时执行一组不同的语句时,使用此语法。 语法:(IF-THEN-ELSIF-ELSE 语句) 在上述语法中,如果外部 IF 条件计算结果为 TRUE,则测试嵌套的 IF 条件,如果为 TRUE,则执行 THEN 关键字和 ENDIF 语句之间的语句,否则执行 ELSE 关键字和 ENDIF 语句之间的语句。 ![]() 上图显示了 嵌套的 IF-THEN-ELSE 语句的示意流程。 示例:编写一个 PL/SQL 程序,使用简单的 IF -THEN-ELSE 语句检查给定的数字是否为偶数,如果它不等于零,否则显示消息数字为零。 说明:在上述示例中,执行时将提示数字 (n) 的值。如果该数字不为 0,则它将检查表达式 n Mod = 0,如果其计算结果为 TRUE,则它将显示该数字为偶数,否则它将显示该数字为奇数。 保存文件并运行它之后,我们将获得以下输出。 输出 Enter the value for N: 5 Old 5: N: = & 5; New 5: N =: 5; 5 is odd PL/SQL procedure successfully completed. IF-THEN-ELSIF 语句:当您必须实现具有多个备选方案的逻辑时,使用 IF-THEN-ELSIF 语句。它提供了一种从多个手动过度备选方案中选择操作的方法。 IF-THEN-ELSIF 语句的语法 在上述语法中,IF 和 ELSEIF 子句中的条件从上到下进行评估,即首先评估 condition1,然后评估 condition2,依此类推。如果其中任何一个评估为 TRUE,则执行其后的语句,其余语句在之后将被忽略。如果所有 ELSEIF 条件的计算结果都为 FALSE,则 PL/SQL 查找 ELSE 子句并执行 ELSE 子句之后的语句。ELSE 子句是可选的,如果没有 ELSE 子句,则控制权将仅传递到 ENDIF 子句之外。 ![]() 上图显示了嵌套的 IF-THEN-ELSIF-ELSE 语句的示意流程。 语法:(IF-THEN-ELSIF-ELSE 语句) 如果希望在 condition1 为 TRUE 时执行一组语句,在 condition2 为 TRUE 时执行另一组语句,或者在 condition1 和 condition2 都为 FALSE 时执行另一组语句,则这是最先进的语法,并且已使用。 当某个条件被认为是 TRUE 时,IF-THEN-ELSE 语句将执行相应的代码,并且不会进一步检查任何条件。如果没有满足条件,则将执行 IF-THEN-ELSE 语句的 ELSE 部分。ELSIF 和 ELSE 部分是可选的。示例:编写一个 PL/SQL 程序,当输入获得的百分比标记时,使用 IF-THEN-ELSIF-ELSE 语句打印学生的等级。 说明 在上述示例中,执行时,它会提示用户输入学生的百分比标记。然后,它将后续条件并显示一条足够的消息,否则它将打印消息“百分比必须介于 01 和 100 之间”。 Enter the value for n: 70 Old 70: N = &n; New 70: N := 70; Grade B PL/SQL procedure successfully completed. 使用 IF 语句的一般规则 在使用 PL/SQL 中的 IF 语句时,应牢记以下规则。
下一个主题PL/SQL Case |
我们请求您订阅我们的新闻通讯以获取最新更新。