Đối tượng của ResultSet duy trì một con trỏ trỏ đến một hàng của một bảng. Ban đầu, con trỏ trỏ đến hàng đầu tiên.
Nhưng chúng ta có thể làm cho đối tượng này di chuyển hướng chuyển tiếp và ngược lại bằng cách truyền một trong hai kiểu TYPE_SCROLL_INSENSITIVE hoặc TYPE_SCROLL_SENSITIVE trong phương thức createStatement(int, int) cũng như chúng ta có thể làm cho đối tượng này có thể cập nhật được bằng cách:
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
Nội dung chính
Các phương thức phổ biến của giao diện ResultSet trong java
Dưới đây là các phương thức phổ biến của giao diện ResultSet trong java:
Phương thức | Mô tả |
---|---|
1) public boolean next(): | được sử dụng để di chuyển con trỏ đến một hàng tiếp theo từ vị trí hiện tại. |
2) public boolean previous(): | được sử dụng để di chuyển con trỏ đến một hàng trước đó từ vị trí hiện tại. |
3) public boolean first(): | được sử dụng để di chuyển con trỏ đến hàng đầu tiên trong đối tượng thiết lập kết quả. |
4) public boolean last(): | được sử dụng để di chuyển con trỏ đến hàng cuối cùng trong đối tượng thiết lập kết quả. |
5) public boolean absolute(int row): | được sử dụng để di chuyển con trỏ đến số hàng được chỉ định trong đối tượng ResultSet. |
6) public boolean relative(int row): | được sử dụng để di chuyển con trỏ đến số hàng tương đối trong đối tượng ResultSet, nó có thể là dương hoặc âm. |
7) public int getInt(int columnIndex): | được sử dụng để trả về dữ liệu của chỉ mục cột được chỉ định của hàng hiện tại như int. |
8) public int getInt(String columnName): | được sử dụng để trả lại dữ liệu của tên cột được chỉ định của hàng hiện tại như int. |
9) public String getString(int columnIndex): | được sử dụng để trả về dữ liệu của chỉ mục cột được chỉ định của dòng hiện tại như String. |
10) public String getString(String columnName): | được sử dụng để trả lại dữ liệu của tên cột được chỉ định của hàng hiện tại như String. |
Ví dụ về Scrollable ResultSet trong java
Ví dụ dưới đây in ra màn hình row thứ 3 của kết quả truy vấn:
package vn.viettuts.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class ResultSetExample { private static String DB_URL = "jdbc:mysql://localhost:3306/testdb"; private static String USER_NAME = "root"; private static String PASSWORD = "1234567890"; public static void main(String[] args) { try { Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection(DB_URL, USER_NAME, PASSWORD); // crate statement Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); // get data from table 'student' ResultSet rs = stmt.executeQuery("SELECT * FROM student"); // getting the record of 3rd row rs.absolute(3); System.out.println(rs.getInt(1) + " " + rs.getString(2) + " " + rs.getString(3)); } catch (Exception ex) { System.out.println("connect failure!"); ex.printStackTrace(); } } }
Kết quả:
3 Ngôn Danang