"column index out of range"的原因

上一篇 / 下一篇  2012-11-12 13:59:17 / 个人分类:问题解决

今天将ResultSet转成list时遇到此问题,出错的代码如下:
ResultSetMetaData data = rs.getMetaData();
int count = data.getColumnCount();
while(rs.next()){
map = new HashMap<String, String>();
for (int i=0;i<count;i++){
map.put(data.getColumnName(i), rs.getString(i));
}
错误原因:字段的索引是从1开始的,所以只要改为如下即可:
for (int i=1;i<=count;i++)
总结:
比如说,一个表有2个字段,那么索引值只有1,2是有效的,其它都会出现标题中的错误。
rs.getString(0);  //抛出异常
rs.getString(1);  //ok
rs.getString(2);  //ok
rs.getString(3);  //抛出异常

TAG:

 

评分:0

我来说两句

Open Toolbar