ResultSet Interface trong JDBC



Có thể nói rằng ResultSet là một bảng dữ liệu mà biểu diễn tập kết quả từ cơ sở dữ liệu mà được trả về bởi các lệnh SQL. Một đối tượng ResultSet duy trì một con trỏ trỏ tới hàng dữ liệu hiện tại của nó. Ban đầu, con trỏ được đặt trước hàng đầu tiên. Theo mặc định, đối tượng ResultSet chỉ có thể được di chuyển thuận về trước và nó là không thể cập nhật.

Nhưng bạn có thể làm cho đối tượng này di chuyển về trước hoặc về sau bằng cách truyền các tham số TYPE_SCROLL_INSENSITIVE hoặc TYPE_SCROLL_SENSITIVE trong phương thức createStatement(int,int). Dưới đây là một số hằng bạn cần biết:

  • ResultSet.TYPE_FORWARD_ONLY: Thiết lập hằng này làm cho con trỏ chỉ có thể di chuyển thuận về trước trong result set.

  • ResultSet.TYPE_SCROLL_INSENSITIVE: Thiết lập hằng này làm cho con trỏ có thể cuốn về trước hoặc về sau, và result set là không nhạy với các thay đổi tới cơ sở dữ liệu mà được thực hiện sau khi result set được tạo.

  • ResultSet.TYPE_SCROLL_SENSITIVE: Thiết lập hằng này làm cho con trỏ có thể cuốn về trước hoặc về sau, và result set là nhạy với các thay đổi tới cơ sở dữ liệu mà được thực hiện sau khi result set được tạo.

  • ResultSet.CONCUR_READ_ONLY: Đây là giá trị mặc định của ResultSet. Làm cho result set là read-only.

  • ResultSet.CONCUR_UPDATABLE: Làm cho ResultSet là có thể cập nhật.

Dựa vào các hằng trên, chúng ta có thể khởi tạo một đối tượng Statement để tạo một đối tượng ResultSet có các đặc tính là có thể cuốn về trước và sau và có thể cập nhật, như sau:

try {
   Statement stmt = conn.createStatement(
                           ResultSet.TYPE_SCROLL_INSENSITIVE,
                           ResultSet.CONCUR_READ_ONLY);
}
catch(Exception ex) {
   ....
}
finally {
   ....
}

Một số phương thức được sử dụng phổ biến của đối tượng ResultSet

Dưới đây, mình chia các phương thức của ResultSet Interface thành ba loại. Với mỗi loại, mình sẽ liệt kê một số phương thức cũng như ví dụ minh họa cho các bạn dễ tìm hiểu. Vì phần trình bày là khá dài, nên bạn theo link để tìm hiểu chi tiết.

Loại 1: Các phương thức được sử đụng để di chuyển con trỏ bên trong Result Set..

Loại 2: Các phương thức để quan sát dữ liệu trong các cột của hàng hiện tại đang được trỏ bởi con trỏ..

Loại 3: Các phương thức được sử dụng để cập nhật dữ liệu trong các cột của hàng hiện tại..

Mọi người cho thể tham gia khóa học thứ 5 của vietjackteam vào đầu tháng 12/2017 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Số lượng các công việc Java hoặc .NET luôn gấp ít nhất 3 lần Android hoặc iOS trên thị trường tuyển dụng.

Mọi người có thể xem demo nội dung khóa học tại địa chỉ Video demo khóa học Offline

Các bạn ở xa học không có điều kiện thời gian có thể tham dự khóa Java online để chủ động cho việc học tập. Nhân dịp tháng khuyến mại, trong tháng 11/2017, giá khóa học chỉ còn 270k, khóa học bằng Tiếng Việt với gần 100 video, các bạn có thể chủ động bất cứ lúc nào, và xem mãi mãi. Thông tin khóa học tại Khóa học Java Online trên Udemy

Loạt bài hướng dẫn học Java JDBC cơ bản và nâng cao của chúng tôi dựa trên nguồn tài liệu của: Tutorialspoint.com



Demo một bài giảng trong khóa học online tại vietjackteam.