Java中的ResultSet.TYPE_FORWARD_ONLY

时间:2012-12-23 11:29:09

标签: java

 try {

        Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/employee", "root", "root");
        String query = "select * from sample;";
        Statement stmt = con.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
        stmt.executeQuery(query);
        ResultSet rs = stmt.getResultSet();
        rs.absolute(3);

        while (rs.next()) {
            System.out.println(rs.getString("name"));
        }
            rs.beforeFirst();
            while (rs.next()) {
            System.out.println(rs.getString("name"));
        }

 while (rs.previous()) {
            System.out.println(rs.getString("name"));
        }
    } catch (Exception ex) {
        ex.printStackTrace();
    }

这很好用。 这里ResultSetTYPE_FORWARD_ONLY,但我也可以按照之前的方向前进。 任何人都可以解释一下,我用谷歌搜索它但得不到任何令人满意的答案。

1 个答案:

答案 0 :(得分:2)

作为stated on roseindia.net

  

ResultSet方法将游标设置为最后一条记录之后。它设定了   光标位置为最后+ 1. void afterLast()移动光标   到最后一行的ResultSet对象的末尾。这个   如果结果集不包含任何行,则该方法无效。

     

语法:

ResultSet rs;

void rs.afterLast();
     

现在我们将使用此方法创建示例。在这个例子中,   afterLast()指向结果集对象中的最后一个位置   resultset previous()将光标移动到此前一行   ResultSet对象。