如何使用JDBC程序浏览ResultSet?

ResultSet接口的next()方法将当前ResultSet对象的指针/光标移动到当前位置的下一行。此方法返回一个布尔值。如果当前位置旁边没有行,则此方法返回false,否则返回true。

因此,在while循环中使用此方法可以迭代ResultSet对象的内容。

while(rs.next()){
}

获取每个记录的列值

结果集接口(也)提供getter方法(的getXXX())来检索在一行的每一列的值,每个Getter的方法有两种变体:

  • getXXX(int columnIndex):接受表示列索引的整数值并返回其值。

  • getXXX(String columnLabel):接受表示列名称的String值,并返回其值。

您需要根据表中列的数据类型使用相应的getter方法。

while(rs.next()) {
   System.out.print("Brand: "+rs.getString("Column_Name")+", ");
   System.out.print("Sale: "+rs.getString("Column_Name "));
   ………………………
   ………………………
   System.out.println("");
}

同样,如果它是双向ResultSet对象,则可以使用previous()方法向后导航。

由于默认情况下ResultSet对象的指针位于第一行之前。要向后导航,您需要将指针/光标移至最后一行之后的下一行,并按以下方式向后导航:

rs.afterLast();

System.out.println("Contents of the table");
while(rs.previous()) {
   System.out.print("Brand: "+rs.getString("Mobile_Brand")+", ");
   System.out.print("Sale: "+rs.getString("Unit_Sale"));
   System.out.println("");
}