字元型別
字元型別變數用來儲存字串或者字元資料。其型別包括VARCHAR2,CHAR,LONG,NCHAR和NVCHAR2
數值型別
數值型別變數儲存整數或者實數。它包括了NUMBER,PLS_INTEGER和BINRAY_BINARY_INTEGER或PLS_INTEGER型別的變數只儲存整數
日期時間型別
時間型別包括date型別,timestamp型別和interval型別。
布林型別
布林型別中的唯一型別是BOOLEAN,主要用於控制程式流程。
%type型別和%rowtype型別
為了保持某個標量的資料的型別與表中某個欄位的資料型別一致,可以定義資料型別為%type型別。
%type型別只是針對表中的某一列,而%rowtype型別則針對表中的一行
記錄型別和表型別
(1)記錄型別
記錄型別與表的結構相似,記錄型別定義的變數可以儲存由一個或多個欄位組成的一行資料
建立記錄型別的語法如下:
TYPE record_name is RECORD(field_name date_type);
(2)表型別
使用記錄型別只能儲存一行資料,這就限制了查詢語句返回行數。如果需要返回多行資料,就要使用表型別
條件語句
(1)IF條件語句
IF<條件表示式> then
<執行語句1>
IF<條件表示式> then
<執行語句2>
。 。 。
ELSE
<執行語句n>]
END IF;
(2) CASE條件語句
CASE <變數>
WHEN<表示式1> THEN 值1
WHEN<表示式n> THEN 值n
ELSE 值n+1
END;
迴圈語句
(1)迴圈語句LOOP。。。EXIT。。。END
LOOP
<程式塊1>
IF <條件表示式> THEN
EXIT
END IF
<程式塊2>
END LOOP;
(2)迴圈語句LOOP。。。EXIT WHEN 。。。END
此語句的功能是重複執行迴圈中的程式虧啊,知道滿足EXIT WHEN後面的判斷語句,則退出迴圈。
LOOP
<程式塊1>
EXIT WHEN <條件表示式>
<程式塊2>
END LOOP;
(3)WHILE迴圈語句
迴圈語句WHILE。。。LOOP。。。END LOOP的功能是當WHILE後面的田間語句成立時,重複執行迴圈體中的程式塊
WHILE<程式表示式>
LOOP
<程式塊>
END LOOP;
(4)FOR迴圈
FOR<迴圈變數> IN<初始值>。。<終止值>
LOOP
<程式塊>
END LOOP;