;
begin // 執行
;
//存儲過程異常
when then
***
when then
***
when then
***
;
end;
(2)帶參存儲過程實例
or ( emp.empno%type)
as
sName emp.ename%type;
sjob emp.job%type;
begin
....
....
end;
(3)帶參數存儲過程含賦值方式
or
(isal in emp.sal%type,
sname out ,
sjob in out )
as
;
begin
count(*) into from emp where sal>isal and job=sjob;
if =1 then
....
else
....
end if;
when then
.('返回值多于1行');
when then
.('在過程中出錯!');
end;
其中參數IN表示輸入參數存儲過程out結果集,是參數的默認模式。
OUT表示返回值參數,類型可以使用任意中的合法類型。
OUT模式定義的參數只能在過程體內部賦值,表示該參數可以將某個值傳遞回調用他的過程
IN OUT表示該參數可以向該過程中傳遞值存儲過程out結果集,也可以將某個值傳出去。
(4)存儲過程中游標定義使用
as //定義(游標一個可以遍歷的結果集)
cur_1 IS
,,SUM()/10000 ,
SUM()/10000
FROM
WHERE ym >=
AND ym