oracle10g 創建存儲過程

oracle10g 創建存儲過程的一個實例:

知識點:
1.遊標
2.if語句的寫法(注意是elsif,不要忘記寫then)
3.變量的賦值 :=

create or replace procedure p_settlement_checkData(supplier in varchar2,buyer in varchar2,startDate in varchar2,endDate in varchar2,checkperson in varchar2) as
--定義遊標
cursor c_diff_saleData is
--此處寫入查詢腳本

--定義保存遊標數據變量
v_diff_data c_diff_saleData%rowtype;

v_cn int;
v_isExist boolean;

begin

-- 打開遊標
open c_diff_saleData;
loop
--遍歷遊標
fetch c_diff_saleData into v_diff_data;
exit when c_diff_saleData % notfound;

v_isExist := false;
if( v_diff_data.sorderId is null and v_diff_data.borderId is not null) then
select count(*) into v_cn from checkedData where borderId = v_diff_data.borderId;
if(v_cn = 0) then
v_isExist := false;
else
v_isExist := true;
end if;
elsif( v_diff_data.sorderId is not null and v_diff_data.borderId is null) then
DBMS_OUTPUT.PUT_LINE("output");
else
DBMS_OUTPUT.PUT_LINE("output");
end if;

end loop;
close c_diff_saleData;

end p_settlement_checkData;
/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章