PLSQL學習——控制語句

上善若水發表於2016-09-16

三種if語句:

第一種:
if  條件  then  語句1;
語句2;
end if;

第二種:
if  條件  then  語句序列1;
else  語句序列2;
end if;

第三種:
if 條件  then  語句;
elsif  語句  then  語句;
else  語句;
end if;
舉例:
/**
判斷使用者從鍵盤輸入的數字
1.如何使用if語句
2.接收一個鍵盤輸入(字串)
*/
set serveroutput on
--接收一個鍵盤輸入
--num:地址值,含義是:在該地址上儲存了輸入的值
accept num prompt '請輸入一個數字';

declare
  --定義變數,儲存使用者從鍵盤輸入的數字
  pnum number:=#
begin
  --執行if語句進行條件判斷
  if pnum = 0 then dbms_output.put_line('您輸入數字是0');
    elsif pnum = 1 then dbms_output.put_line('您輸入數字是1');
    elsif pnum = 2 then dbms_output.put_line('您輸入數字是2');
    else dbms_output.put_line('其他數字');
  end if;
end;
/

迴圈語句:

第一種:
while total <= 25000 loop
...
total := total + salary;
end loop;

第二種:
loop
exit [when 條件];
...
end loop;

第三種:
for i in 1..3 loop
語句序列;
end loop;
第一種舉例:
--使用while迴圈列印數字1~10
set serveroutput on
declare
  --定義迴圈變數
  pnum number := 1;
begin
  while pnum <= 10 loop
  --迴圈體
  dbms_output.put_line(pnum);
  --使該變數+1
  pnum := pnum + 1;
  end loop;
end;
/

第二種舉例:
--使用loop迴圈列印1~10
set serveroutput on
declare
  --定義迴圈變數
  pnum number:=1;
begin
  loop
  --退出條件:迴圈變數大於10
  exit when pnum > 10;
  --列印該變數的值
  dbms_output.put_line(pnum);
  --迴圈變數+1
  pnum := pnum +1;
  end loop;
end;
/
第三種舉例:
--使用for迴圈列印1~10
set serveroutput on
declare
  --定義迴圈變數
  pnum number:=1;
begin
  for pnum in 1..10 loop
    dbms_output.put_line(pnum);
  end loop;
end;
/

相關文章