Oracle 儲存過程問題

2021-08-30 21:23:37 字數 709 閱讀 8485

今天在寫儲存過程時,發現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,效果是一樣的,都是用你的許可權...