将ResultSet移到第一个

我有一个作为rs的结果集对象,我使用了代码片段来计算行数。

       while(rs.next())

count++;

我不得不再次使用相同的结果集来检索数据。我用的方法

    rs.beforefirst();

但它不起作用…控制未进入

   while(rs.next()){

cid=rs.getInt(1);

taskdate=rs.getString(2);

tasktime=rs.getString(3);

addr=rs.getString(4);

}

我必须根据我的查询返回4行。但是它不是???

回答:

结果集是仅前进的。如果要导航回第一条记录,则需要创建

  // Create a scrollable result set

Statement stmt = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_READ_ONLY);

ResultSet resultSet = stmt.executeQuery("SELECT * FROM my_table");

// Move cursor forward

while (resultSet.next()) {

// Get data at cursor

String s = resultSet.getString(1);

}

// Move cursor backward

while (resultSet.previous()) {

// Get data at cursor

String s = resultSet.getString(1);

}

// Move cursor before first record

resultSet.beforeFirst(); //required statement in this case

以上是 将ResultSet移到第一个 的全部内容, 来源链接: utcz.com/qa/404042.html

回到顶部