PL/SQL IF-THEN語句

2021-08-30 16:27 更新

if-then語句是IF控制語句中最簡單的形式,經(jīng)常用于決策和更改程序執(zhí)行的控制流程。

IF語句將條件與關(guān)鍵字THEN和END IF所包含的語句序列相關(guān)聯(lián)。如果條件為TRUE,則語句將被執(zhí)行,如果條件為FALSE或NULL,則IF語句塊不會執(zhí)行任何操作。

語法

IF-THEN語句的語法是 -

IF condition THEN  
   S; 
END IF;
SQL

在這里,condition是布爾或關(guān)系條件,S是簡單或復合語句。 以下是IF-THEN語句的一個例子 -

IF (a <= 20) THEN
   c:= c+1;
END IF;
SQL

如果布爾表達式條件求值為true,則if語句中的代碼塊將被執(zhí)行。如果布爾表達式求值為false,則if語句結(jié)束后的第一組代碼(在結(jié)束結(jié)束if之后)將被執(zhí)行。

流程圖

示例 - 1

下面來看看一個例子來理解上面的執(zhí)行流程 -

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

當上述代碼在SQL提示符下執(zhí)行時,它會產(chǎn)生以下結(jié)果 -

a is less than 20 
value of a is : 10  

PL/SQL procedure successfully completed.
Shell

示例 - 2

我們在PL/SQL變量類型中創(chuàng)建了一個表和幾個記錄,參考以下語句操作上述表和數(shù)據(jù) -

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

當上述代碼在SQL提示符下執(zhí)行時,它會產(chǎn)生以下結(jié)果 -

Salary updated  

PL/SQL procedure successfully completed.

 




以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號