oracle - 无法确定正确的调用签名 - 使用 simpleJdbcCall 时出现多个过程/函数/签名错误

标签 oracle spring-mvc spring-jdbc

这是我的 DAO 代码

 this.calcRTRDetails = new SimpleJdbcCall(dataSource).withCatalogName("score_rtr").
                     withProcedureName("calc_rtr_dtls").declareParameters(
                        new SqlParameter("p_repy_track", Types.ARRAY)    
                      ).returningResultSet("p_track_dtls",new RowMapper<String>() {

                        @Override
                        public String mapRow(ResultSet rs, int arg1)
                                throws SQLException {
                            // TODO Auto-generated method stub
                            return rs.getString(1);
                        }
                    } );

我收到以下错误

org.springframework.dao.InvalidDataAccessApiUsageException: Unable to determine the correct call signature - multiple procedures/functions/signatures for CALC_RTR_DTLS found [SCORE_RTR.SCORE.CALC_RTR_DTLS, SCORE_RTR.SCORE.CALC_RTR_DTLS]

可能是什么原因?

最佳答案

我发现我有一个非常相似的问题,我试图调用一个重载的 Postgres 函数。 Spring 3.2.3 中的解决方案是调用 withoutProcedureColumnMetaDataAccess()。

但请务必明确声明您的参数。另一种方法是为重载函数指定不同的名称。

关于oracle - 无法确定正确的调用签名 - 使用 simpleJdbcCall 时出现多个过程/函数/签名错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19686246/

相关文章:

java - 从 spring boot simpleJDBCcall 调用 PL SQL 过程时出错

json - 如何在 PL/SQL 中解析 JSON 字符串

python - 使用 Python 的 Win32 ODBC 模块检索 Oracle 时间戳

sql - Oracle 将多行合并为一个具有不同标题的行

spring-mvc - 如何为 Elastic Beanstalk 应用程序正确配置 Spring Datasource?

java - 使用表单创建一个简单的 Spring 应用程序

java - 将参数传递给 mapRow

java - 是否可以在运行时创建 Java 模型对象并动态映射 Spring Batch Reader 中的字段?

sql - 在插入新数据集之前获取表中已有事件的行数?

spring-mvc - Spring MVC 是否需要将 Entity 复制/粘贴到 FormObject?