今天在寫儲存過程時,發現oracle儲存過程報錯太模糊。。
不能指定到某乙個具體行。
不知道各位有沒有更好的除錯oracle儲存過程的方法和工具。
create or replace procedure sp_loadunsettledwatertask(
exp_date in varchar,--過期日期
rzrq in varchar, -- 入賬日期
o_result out integer
) is
begin
for cur_wrz in (select lsh,jym,tr_money,yybh,ickh,icjyxh,tr_balance,kh2,jyxh2,tr_balance2,zdbh,zdjyxh,czyh,tr_date,tr_time,log_flag
from tecard.tr_accounts_unrecorded
where tr_date >= exp_date
)loop
end loop;
end ;
原因是oracle儲存過程,引數順序是先是in(入參)的引數列表,然後才是out(出參)的引數列表。
而且,引數的型別不能帶長度,如 exp_date in char(8)就會報錯。。
另個oralce的游標真的是很強大!!個人超喜歡!
先留下乙個筆記 。
Oracle 儲存過程問題
pl sql block structure 為什麼儲存過程中用不到 declare 但是還要有這個東西?a 儲存過程只是過程的一種,其他的要用到 為什麼在過程中寫select一定要加into?a 因為oracle認為過程中寫select不加into是沒有意義的 oracle中如何判斷null a ...
求助,ORACLE儲存過程問題!!
v str varchar2 500 將小寫金額存成字串 v dxje varchar2 500 最後的大寫金額 v i number 單位對應的位置 v j number 數的位置 v bety varchar2 500 單位數轉換成的大寫 v dwcn varchar2 5001 單位跟大寫數字...
Oracle儲存過程許可權問題
儲存過程分成兩種許可權 1.定義者許可權 authid definer 2.呼叫者許可權 authid current user 預設的情況下使用的是定義者許可權。1。定義者許可權使用遇到的問題 當使用定義者許可權時候,不管是你自己去call,還是其他使用者去call,效果是一樣的,都是用你的許可權...