3 回答
TA贡献2051条经验 获得超10个赞
我不太确定您在问什么,也不确定您发布的代码实际上与您要问的内容有何关系。
当您说“您想要第二个条目”时,我假设您指的是 SQL 表中的第二个记录。
try(Connection conn = DriverManager.getConnection(url, username, password)){
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery("SELECT * FROM [TABLENAME]");
rs.next();
//All data stored in the ResultSet obj, to which you may loop through & select rows of interest. Particularly useful methods are .getMetaData(), .getRow(), etc.
}
希望这就是你所要求的。
TA贡献2080条经验 获得超4个赞
考虑你的代码:
ResultSet rs = stat.executeQuery("SELECT * FROM [TABLENAME]");
String username1 = rs.getString ("USERNAME");
String password1 = rs.getString ("PASSWORD");
String aname1 = rs.getString ("a_name");
rs.next();
String username2 = rs.getString ("USERNAME");
String password2 = rs.getString ("PASSWORD");
String aname2 = rs.getString ("a_name");
现在您可以检查第一个条目和第二个条目。
然而,更好的做法是创建一个用户对象, save username,password并aname在其中。然后,使用一些循环,您可以遍历整个结果集并从中获取所有信息。
ResultSet rs = stat.executeQuery("SELECT * FROM [TABLENAME]");
List<User> userList = new ArrayList<User>();
while(rs.next()) {
User user = new User();
user.setUsername(rs.getString ("USERNAME"));
user.setPassword(rs.getString ("PASSWORD"));
user.setAname(rs.getString ("a_name"));
userList.add(user);
}
TA贡献1804条经验 获得超3个赞
如果您已经有一个 ResultSet rs,则可以调用 rs.next()。例如一些代码:
if (rs.next())
{
s.name = rs.getString(1);
s.creator = rs.getString(2);
s.dbname = rs.getString(3);
s.tsname = rs.getString(4);
s.cardf = rs.getFloat(5);
s.npages = rs.getInt(6);
s.statstime = rs.getString(7);
s.avgrowlen = rs.getInt(8);
}
添加回答
举报