寫了一個存盤程序其中第三個入參可以為空,在不為空的情況下,呼叫正常。
一旦Serv_Num入參為空就呼叫報錯。
CREATE OR REPLACE PROCEDURE GET_PURCHASERS(START_DATE IN VARCHAR2,
END_DATE IN VARCHAR2,
Serv_Num IN VARCHAR2 default '' ,
P_CUR OUT SYS_REFCURSOR) IS
......
Serv_Num 入參為空的時候呼叫sql是這樣的(代碼里呼叫的)
call GET_PURCHASERS('2019-03-02','2019-04-02',,'cursor')
報錯是ORA-00936: missing expression
但是我在plsql里測驗的時候這個欄位不傳是沒問題的呀,

為何call GET_PURCHASERS('2019-03-02','2019-04-02',,'cursor')這樣就呼叫不了呢? 是應該第三個引數為空時也傳''么? 可是不是設定了默認值為‘’了么。
uj5u.com熱心網友回復:
pl/sql developer? 引數為空要輸入Nulluj5u.com熱心網友回復:
試試這個call GET_PURCHASERS('2019-03-02','2019-04-02',NULL,'cursor');
uj5u.com熱心網友回復:
或者call GET_PURCHASERS('2019-03-02','2019-04-02','','cursor');
uj5u.com熱心網友回復:
你需要給那個欄位一個位置啊,如果你什么不寫,默認引數不夠啊轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/48170.html
標籤:開發
上一篇:求告知
