Mega Code Archive

 
Categories / Java Tutorial / Database
 

Demonstrates various methods for moving the cursor in a scrollable ResultSet object

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; 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");     // Move cursor forward     while (rs.next()) {       // Get data at cursor       String id = rs.getString(1);       String name = rs.getString(2);     }     // Move cursor backward     while (rs.previous()) {       // Get data at cursor       String id = rs.getString(1);       String name = rs.getString(2);     }     // Move cursor to the first row     rs.first();     // Move cursor to the last row     rs.last();     // Move cursor to the end, after the last row     rs.afterLast();     // Move cursor to the beginning, before the first row.     // cursor position is 0.     rs.beforeFirst();     // Move cursor to the second row     rs.absolute(2);     // Move cursor to the last row     rs.absolute(-1);     // Move cursor to the second-to-last row     rs.absolute(-2);     // Move cursor down 5 rows from the current row. If this moves     // cursor beyond the last row, cursor is put after the last row     rs.relative(5);     // Move cursor up 3 rows from the current row. If this moves     // cursor beyond the first row, cursor is put before the first row     rs.relative(-3);     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", "");   } }