Java DatabaseMetaData getDefaultTransactionIsolation() 方法及示例


在資料庫系統中,當多個事務同時並行執行時,隔離性屬性規定所有事務都將被執行,就好像它是系統中唯一的事務一樣。沒有任何事務會影響其他事務的存在。

**getDefaultTransactionIsolation()** 方法是 DatabaseMetaData 介面的方法,它以整數格式返回底層資料庫的預設隔離級別。

要了解底層資料庫的預設事務隔離級別 -

  • 確保您的資料庫正在執行。

  • 使用 DriverManager 類的 registerDriver() 方法註冊驅動程式。傳遞與底層資料庫對應的驅動程式類的物件。

  • 使用 DriverManager 類的 getConnection() 方法獲取連線物件。將資料庫 URL、使用者名稱和資料庫使用者的密碼作為字串變數傳遞。

  • 使用 Connection 介面的 getMetaData() 方法獲取當前連線的 DatabaseMetaData 物件。

  • 最後,使用 DatabaseMetaData 介面的 getDefaultTransactionIsolation() 方法獲取我們已連線到的資料庫的隔離級別。

示例

以下 JDBC 程式建立與資料庫的連線,檢索並列印底層資料庫的預設事務隔離級別。

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseMetaData_getDefaultTransactionIsolation {
   public static void main(String args[]) throws SQLException {
      //Registering the Driver
      DriverManager.registerDriver(new com.mysql.jdbc.Driver());
      //Getting the connection
      String mysqlUrl = "jdbc:mysql:///mydatabase";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");
      //Retrieving the meta data object
      DatabaseMetaData metaData = con.getMetaData();
      //retrieving the name of the database
      int product_name = metaData.getDefaultTransactionIsolation();
      System.out.println("Transaction isolation level of the underlying database: "+product_name);
   }
}

輸出

Connection established......
Transaction isolation level of the underlying database: 2

更新於: 2019-07-30

108 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.