你应该用  while(rs.next())
{
RS.getString(1)
}
原因是你没有定位指针

解决方案 »

  1.   

    RS.getString(1)怎么报告出错呢?
    你有没有用
    while(rs.next()){
    RS.getString(1)
    }
    or
    if (rs!=null) {
    rs.next();
    RS.getString(1)}
      

  2.   

    RS.getString(1)我已经放到循环里去了,指针应该没有问题。提示是:无效的索引
      

  3.   

    看一下你的第一个columns是不是String类型数据,你要用相应的getXXX来取得相应类型的数据。
      

  4.   

    我知道你的问题的解决方案,但原因不详;
    解决方法如下,定义一组变量能够接收SQL查询所得的一行,然后再进行其他操作
    举例
    ResultSet ret=执行SQL语句   //假设数据库表是个学生档案表
    while( ret.next())
    {
          a=ret.getInt(1);        //将查询到的数据当前行每一个量全都传出来
          b=ret.getString(2);
          c=ret.getChar(3);
            ……
          x=ret.getXXXX(Y);
               //将数据传给需要的变量或实例,如:
          studentAge[i]=a;
          studentName[i]=b.subString(0);
            ……     }
    做法的原因我不清楚(哪位要是明白,望能给小弟一个启发)但只要每次提取数据,把“当前行”“所有”数据都提出来赋给相应的量就可以了(哪怕仅是临时变量,根本用不到)