Sử dụng các row method trong JDBC trong Java



Miêu tả vấn đề

Cách sử dụng các row method khác nhau để lấy số lượng row trong một Table, cập nhật Table, … trong JDBC?

Giải pháp

Ví dụ sau sử dụng các phương thức first, last, deletRow, getRow, insertRow của ResultSet để xóa hoặc chèn một row và di chuyển con trỏ của ResultSet tới Record đầu tiên hoặc cuối cùng trong JDBC.

import java.sql.*;public class jdbcConn {
   public static void main(String[] args) throws Exception{
      Class.forName("org.apache.derby.jdbc.ClientDriver");
      Connection con = DriverManager.getConnection
      ("jdbc:derby://localhost:1527/testDb","name","pass");
      Statement stmt = con.createStatement
      (ResultSet.TYPE_SCROLL_SENSITIVE, 
      ResultSet.CONCUR_UPDATABLE);
      String query = "select * from emp";
      ResultSet rs = stmt.executeQuery(query);
      rs.last();
      System.out.println("No of rows in table="+rs.getRow());
      rs.moveToInsertRow();
      rs.updateInt("id", 9);
      rs.updateString("name","sujay");
      rs.updateString("job", "trainee");
      rs.insertRow();
      System.out.println("Row added");
      rs.first();
      rs.deleteRow();
      System.out.println("first row deleted");
   }
}

Kết quả

Code trên sẽ cho kết quả sau. Để code này có thể biên dịch thì Database của bạn phải có thể cập nhật. Kết quả có thể rất đa dạng.

No of rows in table=5
Row added
first row deleted

java_jdbc_trong_java.jsp