一:if條件控制
先看一段程式:
declare
v_content varchar2(66);
begin
select content into v_content from xland where title='xland';
if length(v_content)>6 then
v_content := substr(v_content,0,6)||'...';
else
v_content := v_content||'(全部資料)';
end if;
dbms_output.put_line(v_content);
end;
這段程式用到了if…then else end if結構
1.其中length()函式可以獲取乙個字串的字元長度
另外還有lengthb()函式,可以獲取乙個字串的位元組長度
2.substr()函式,可以按字元長度獲取乙個字串的子字串,
另外還有substrb()函式,可以按位元組長度獲取乙個字串的子字串
3.select… 句是從乙個表裡獲取一條資料,並把資料儲存在我們定義的變數中
注意一定要是一條資料,因為我們的變數不是table或者record型別
至於這些型別會在後面的文章中提到
另外還有if…then elseif…then else end if結構
這裡就不舉例子了
注意elseif是連在一起寫的,這很像vb的語法,與c#語法有區別
二:case條件控制
先看例子:
declare
v_content number;
begin
select length(content) into v_content from xland where title='xland';
case
when v_content>6 then
dbms_output.put_line('長度為:'||to_char(v_content));
when v_content<6 then
dbms_output.put_line('長度為:'||to_char(v_content));
else dbms_output.put_line('長度為:'||to_char(v_content));
end case;
end;
其中:to_char()是將乙個日期或數字轉換成字串型別的函式
我這裡只做演示
實際使用當中case分支控制結構當然不會這樣寫
再看乙個例子:
declare
v_content number;
begin
select length(content) into v_content from xland where title='xland';
case v_content
when 16 then
dbms_output.put_line('長度為:'||to_char(v_content));
else
dbms_output.put_line('長度為:'||to_char(v_content));
end case;
end;
這個就不多解釋了。
PLSQL條件控制
if條件控制語句 declare sal number 500 comm number begin if sal 100 then comm 0 elsif sal 600 then comm sal 0.1 elsif sal 1000 then comm sal 0.2 else comm sa...
6 PL SQL條件控制
決策結構要求程式設計師指定要由程式評估或測試乙個或多個條件,以及如果條件確定為真 true 則執行對應的語句塊,以及可選地,如果執行其他語句條件被確定為假 false 以下是大多數程式語言中的典型條件 即決策 結構的一般形式 pl sql程式語言提供以下型別的決策語句。以下鏈結來檢視它們的細節。編號...
PL SQL學習筆記 迴圈控制與順序控制
一 loop.end loop 先看 declare v flag number 1 begin loop exit when v flag 16 v flag v flag 1 dbms output.put line to char v flag end loop end 其中exit when...