无法从mysql数据库中检索所有行

时间:2013-11-06 07:06:14

标签: java mysql

当我尝试使用java代码从数据库中检索所有行时输出错误,即如果表有5行意味着最后一行只显示5次...

while(result.next()) {
            user = new User();  
            user.setId(result.getInt("id"));
            user.setName(result.getString("name"));
            user.setPassword(result.getString("password"));

            list.add(user);
            result = result.next();
        }  

2 个答案:

答案 0 :(得分:5)

您的Resultset逻辑不正确,Resultset.next()作为光标向前移动直到完成。尝试

 while(result.next()) {
        user = new User();  
        user.setId(result.getInt("id"));
        user.setName(result.getString("name"));
        user.setPassword(result.getString("password"));

        list.add(user);

    }  

答案 1 :(得分:0)

您可以尝试使用此代码,

if(result != null) {
  while(result.next()){ 
        user = new User();  
        user.setId(result.getInt("id"));
        user.setName(result.getString("name"));
        user.setPassword(result.getString("password"));

        list.add(user);

      }
    }