2014-06-06 27 views
0

我正在從我的java調用一個RPG過程,並且出現錯誤。IN,OUT或INOUT對於程序中的參數無效

ERROR o.h.e.jdbc.spi.SqlExceptionHelper - [SQL0469] IN, OUT, or INOUT not valid for parameter 4 in procedure in *N. 

查詢中的參數之一是IN和OUT。

我只是試圖寫的一個小的查詢,如下

"CALL " + procedureName + "(2014, 1, 1.00, 0,'Y')"); 

這裏參數號4(0)是該查詢也返回作爲輸入的輸出。

任何幫助?

這是實際的查詢,我寫

rpgCall = connection.prepareCall("CALL " + procName + "(?, ?, ?, ?, ?)"); 

      rpgCall .setInt(1, params.year); 
      rpgCall .setInt(2, params.value1); 
      rpgCall .setInt(3, params.value2); 
      rpgCall .setInt(4,params.value3); 
      rpgCall .setString(5, "Y"); 
      rpgCall .execute(); 

回答

2

如果參數是OUT,那麼你需要在該位置的變量 - 你不能傳遞一個常數,因爲該程序不能改變的。

+0

謝謝Scott.I會嘗試。 – newBee

+0

它應該像這樣sqlCall.registerOutParameter(4,java.sql.Types.DECIMAL); http://www.mkyong.com/jdbc/jdbc-callablestatement-stored-procedure-out-parameter-example/ – newBee

相關問題