oracle儲存過程報"無效的列索引"的錯誤
因為是新手上路,所以犯的錯誤也很簡單,所以就貼一小部分相關的程式碼了.
final String sql = "{call pkg_bd_interface.sp_bd_interface(?,?,?)}";
CallableStatement call;
call = this.getSession().connection().prepareCall(sql);
call.setObject(1, jsonMap.get("list"));
call.setObject(2, jsonMap.get("clientIp"));
call.registerOutParameter(3, java.sql.Types.NUMERIC);
在報這個錯後,檢查了儲存過程,是正常的.然後又浪費了一個多小時的時間檢查相關的檔案配置等.終於找到了錯誤.\
原來是把call.setObject(1, jsonMap.get("list"));
call.setObject(2, jsonMap.get("clientIp"))
call.registerOutParameter(3, java.sql.Types.NUMERIC);
;的下標1,2,3寫成了0,1,2
因為第一次用儲存過程,不太熟悉,犯了個低階錯誤,記下來.