1. 程式人生 > >Oracle IF-ELSE 條件判斷結構

Oracle IF-ELSE 條件判斷結構

declare src 需要 輸出 tle blog 判斷 || tool

1. IF 語法

IF 表達式 THEN
    ...
END IF;

例如:

技術分享圖片
set serverout on
declare
   v_name varchar2(20):=‘&name‘;
begin
   if v_name=‘kiki‘ then
      dbms_output.put_line(‘登錄成功‘);
   end if;
end;
/
--------執行內容結果如下-------
輸入 name 的值:  kiki
原值    2:    v_name varchar2(20):=‘&name‘;
新值    2:    v_name varchar2(20):=‘kiki‘;
登錄成功
技術分享圖片

2. IF .. ELSE 語法:

IF  條件表達式  THEN
  ...
ELSE
  ...
END IF;

例如:

技術分享圖片
set serverout on
declare
   v_name student.sname%type:=‘&name‘;
begin
  if v_name=‘kiki‘ then 
     dbms_output.put_line(‘登錄成功!‘);
  else
     dbms_output.put_line(‘登錄失敗‘);
  end if;
end;
/

--------執行內容結果如下-------
輸入 name 的值:  kiki
原值    2:    v_name student.sname%type:=‘&name‘;
新值    2:    v_name student.sname%type:=‘kiki‘;
登錄失敗
技術分享圖片

3. IF ... ELSIF ... ELSE 嵌套結構

技術分享圖片
IF 條件表達式  THEN
    ...
ELSIF 條件表達式 THEN
    ...
ELSE
    ...
END  IF ;
技術分享圖片

例如:

技術分享圖片
--1.if-else結構
set serverput on  --打開oracle自帶的輸出方法dbms_output
declare --聲明
   v_name varchar2(20):=‘&name‘; --定義需要手動輸入的變量
   v_password number(10):=‘&password‘;
begin --開始
   if v_name=‘kikiwen‘ and v_password=123 then --條件判斷
      dbms_output.put_line(‘登錄成功‘);--輸出語句
   elsif v_name=‘kiki‘ and v_password=123 then
      dbms_output.put_line(‘登錄‘ || v_name || ‘賬號成功‘);
   else
      dbms_output.put_line(‘登錄失敗!‘|| v_name || ‘賬號或者密碼不正確‘);
   end if;
end;--結束
/
--------執行內容結果如下-------
輸入 name 的值:  kiki
原值    2:    v_name varchar2(20):=‘&name‘;
新值    2:    v_name varchar2(20):=‘kiki‘;
輸入 password 的值:  123
原值    2:    v_name varchar2(20):=‘&password‘;
新值    2:    v_name varchar2(20):=123;
登錄kiki賬號成功

Oracle IF-ELSE 條件判斷結構