加入收藏 | 设为首页 | 会员中心 | 我要投稿 孝感站长网 (https://www.0712zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

oracle – 无法确定正确的调用签名 – 使用simpleJdbcCall时出现

发布时间:2021-02-08 04:06:03 所属栏目:站长百科 来源:网络整理
导读:这是我的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 R

这是我的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().

但一定要明确声明您的参数.另一种方法是为您的重载函数赋予不同的名称.

(编辑:孝感站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读