我有一个返回true的函数,即使过程没有正确执行。下面是用于调用过程的函数。此功能/任务必须通过过程执行。如果有人能提出问题所在,那就太好了。我在这个问题上花了太多时间。
java程序是用springboot2.0.5编写的
public boolean doSomeThing(Argument 1, Argument 2) {
SimpleJdbcCall simpleJdbcCall = new SimpleJdbcCall(jdbcTemplate)
.withProcedureName("ProcedureName");
Map<String, Object> inParamMap = new HashMap<String, Object>();
inParamMap.put("Parameter1", Argument 2);
inParamMap.put("Parameter2", Argument 1);
inParamMap.put("Parameter3", "");
inParamMap.put("Parameter4", "some text");
inParamMap.put("Parameter5", "");
inParamMap.put("Parameter6", "");
inParamMap.put("Parameter7", "some text");
inParamMap.put("Parameter8", null);
inParamMap.put("Parameter9", null);
SqlParameterSource in = new MapSqlParameterSource(inParamMap);
simpleJdbcCall.execute(in);
return true;
}
db:oracle版本:oracle database 12c enterprise edition release 12.1.0.2.0-64位产品
我试过的东西
将ojdbc6更改为ojdbc8=>无影响
用update查询替换过程调用,update查询基本上做了相同的事情,查询正确执行。
我尝试使用callablestatement来代替SimpleJDBCall,但它也不起作用。
使用dbeaver使用相同的参数手动执行该过程,它将正确执行。
暂无答案!
目前还没有任何答案,快来回答吧!