2014-12-07 70 views
0

我是新的pl/sq。調試運行時pl/sql錯誤

所以,我想打電話給PL/SQL的Java存儲過程,但出現錯誤:

wrong number or types of arguments in call to ‘searchuser’. 

我在哪裏可以找到最具體的異常?

oracle中是否有一些錯誤日誌或錯誤表?我該如何調試這些類型的問題?

謝謝!

回答

1

有一點是,如果你從java調用存儲過程:不要忘記註冊函數結果。例如Java代碼:

 CallableStatement cstmt = connection.prepareCall("{? = call xxx.checkArea(?,?)}"); 

     // the 1st Parameter is the result of the function checkArea 
     cstmt.registerOutParameter(1, Types.INTEGER); // Function Return 
     cstmt.setInt(2, status);      // Parameter 1 (in) 
     cstmt.registerOutParameter(3, Types.INTEGER); // Parameter 2 (out) 

     // execute the call 
     cstmt.execute(); 

     // check the results 
     sessionId = cstmt.getInt(1); // Session-ID 
     rows = cstmt.getInt(3);  // Rows 

的PL/SQL函數被聲明爲以下:

function checkArea(pi_area  in number, 
        po_rows  out number) return number; 
相關問題