您的位置:首页 > 数据库 > Oracle

oracle存储过程报"无效的列索引"的错误

2015-12-28 22:59 405 查看
      因为是新手上路,所以犯的错误也很简单,所以就贴一小部分相关的代码了.

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 

因为第一次用存储过程,不太熟悉,犯了个低级错误,记下来.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息