try {
while (rs.next()) {
System.out.println("-----"+rs.getString("NetAddr"));
if (rs.getString("NetAddr").equals(deviceid)) {
System.out.println(rs.getString("PointID")+"-------");
return rs.getString("PointID");
}
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

解决方案 »

  1.   

    看你的结贴率就知道为什么了还有写法没问题的,你的sql执行结果就是只有一条记录吧
      

  2.   

    while (rs.next()) {
    System.out.println("-----"+rs.getString("NetAddr"));
    if (rs.getString("NetAddr").equals(deviceid)) {
    System.out.println(rs.getString("PointID")+"-------");
    return rs.getString("PointID");
    }
    }
    写法明显有问题嘛你都return了还想要几条记录?
      

  3.   

    ++
    刚循环完一条的时候就return了,所以只返回一条记录
      

  4.   


    while (rs.next()) {
     String str = rs.getString("NetAddr");
    System.out.println("-----"+ str);
    if (str.equals(deviceid)) {
    String temp = rs.getString("PointID");
    System.out.println(temp + "-------");
    return temp;
    }
    }