Java Connection getHoldability() 方法及示例
ResultSet 的可持有性決定了當使用 Connection 介面的 commit() 方法提交事務(包含該遊標/ResultSet 物件)時,ResultSet 物件(遊標)是否應該關閉或保持開啟狀態。
**Connection** 介面的 **getHoldability()** 方法用於檢索並返回此連線中 ResultSet 物件的當前可持有性值。
此方法返回一個整數,表示當前 ResultSet 的可持有性,其值為 1 或 2,其中:
1 表示值 HOLD_CURSORS_OVER_COMMIT。
如果 ResultSet 物件的可持有性設定為此值,則每當您使用 Connection 介面的 commit() 方法提交/儲存事務時,當前事務中建立的(已開啟的)ResultSet 物件將保持開啟狀態。
2 表示值 CLOSE_CURSORS_AT_COMMIT。
如果 ResultSet 物件的可持有性設定為此值,則每當您使用 Connection 介面的 commit() 方法提交/儲存事務時,當前事務中建立的(已開啟的)ResultSet 物件將被關閉。
要檢索當前的可持有性值 -
使用 DriverManager 類的 registerDriver() 方法註冊驅動程式,如下所示:
//Registering the Driver DriverManager.registerDriver(new com.mysql.jdbc.Driver());
使用 DriverManager 類的 getConnection() 方法獲取連線,如下所示:
//Getting the connection String url = "jdbc:mysql:///mydatabase"; Connection con = DriverManager.getConnection(url, "root", "password");
使用 Connection 介面的 getHoldability() 方法獲取當前 ResultSet 可持有性值,如下所示:
con.getHoldability();
以下 JDBC 程式建立與資料庫的連線並檢索當前的可持有性值。
示例
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Connection_getHoldability {
public static void main(String args[]) throws SQLException {
//Registering the Driver
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
//Getting the connection
String url = "jdbc:mysql:///mydatabase";
Connection con = DriverManager.getConnection(url, "root", "password");
System.out.println("Connection established......");
//Setting the auto commit false
con.setAutoCommit(false);
//Setting the holdability to CLOSE_CURSORS_AT_COMMIT
con.setHoldability(ResultSet.CLOSE_CURSORS_AT_COMMIT);
System.out.println("HOLD_CURSORS_OVER_COMMIT: "+ResultSet.HOLD_CURSORS_OVER_COMMIT);
System.out.println("CLOSE_CURSORS_AT_COMMIT: "+ResultSet.CLOSE_CURSORS_AT_COMMIT);
System.out.println("Current ResultSet holdability value is: "+con.getHoldability());
}
}輸出
Connection established...... HOLD_CURSORS_OVER_COMMIT: 1 CLOSE_CURSORS_AT_COMMIT: 2 Current ResultSet holdability value is: 2
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP