1

当我尝试使用 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();
        }  
4

2 回答 2

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);

    }  
于 2013-11-06T07:07:58.470 回答
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);

      }
    }  
于 2013-11-06T07:08:30.450 回答