Java ResultSet.relative(int rows)
Syntax
ResultSet.relative(int rows) has the following syntax.
boolean relative(int rows) throws SQLException
Example
In the following code shows how to use ResultSet.relative(int rows) method.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
/*from w w w .j av a 2 s . c o m*/
public class Main {
public static void main(String[] args) throws Exception {
Connection conn = getConnection();
Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
st.executeUpdate("create table survey (id int,name varchar(30));");
st.executeUpdate("insert into survey (id,name ) values (1,'nameValue')");
st.executeUpdate("insert into survey (id,name ) values (2,null)");
st.executeUpdate("insert into survey (id,name ) values (3,'Tom')");
ResultSet rs = st.executeQuery("SELECT * FROM survey");
rs.last();
// Move cursor up 2 rows from the current row. If this moves
// cursor beyond the first row, cursor is put before the first row
rs.relative(-2);
// Get data at cursor
String id = rs.getString("id");
System.out.println(id);
rs.close();
st.close();
conn.close();
}
private static Connection getConnection() throws Exception {
Class.forName("org.hsqldb.jdbcDriver");
String url = "jdbc:hsqldb:mem:data/tutorial";
return DriverManager.getConnection(url, "sa", "");
}
}
The code above generates the following result.