Java Connection getMetaData() 方法及示例
通常,關於資料的資料被稱為元資料。DatabaseMetaData 介面提供方法來獲取有關您已連線的資料庫的資訊,例如資料庫名稱、資料庫驅動程式版本、最大列長度等。
Connection 介面的 getMetaData() 方法檢索並返回 DatabaseMetaData 物件。這包含有關您已連線到的資料庫的資訊。您可以透過使用獲得的物件呼叫 DatabaseMetaData 介面的方法來獲取有關資料庫的資訊,例如資料庫的名稱、版本、驅動程式名稱、使用者名稱、URL 等。
此方法返回包含有關底層資料庫資訊的 DatabaseMetaData 物件。
使用 DatabaseMetaData 檢索 MySQL 資料庫元資料的步驟
以下是使用 DatabaseMetaData 檢索 MySQL 資料庫元資料的步驟:
- 匯入必要的包
- 註冊 MySQL 驅動程式
- 建立資料庫連線
- 建立DatabaseMetaData 物件
- 檢查批處理更新支援
- 檢索並列印元資料
使用 DatabaseMetaData 檢索 MySQL 資料庫元資料
以下是使用 DatabaseMetaData 檢索 MySQL 資料庫元資料的 Java 程式:
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Connection_getMetaData {
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......");
//Creating the DatabaseMetaData object
DatabaseMetaData dbMetadata = con.getMetaData();
//invoke the supportsBatchUpdates() method.
boolean bool = dbMetadata.supportsBatchUpdates();
if(bool) {
System.out.println("Underlying database supports batch updates");
} else {
System.out.println("Underlying database doesn’t support batch updates");
}
//Retrieving the driver name
System.out.println("Driver name: "+dbMetadata.getDriverName());
//Retrieving the driver version
System.out.println("Database version: "+dbMetadata.getDriverVersion());
//Retrieving the user name
System.out.println("User name: "+dbMetadata.getUserName());
//Retrieving the URL
System.out.println("URL for this database: "+dbMetadata.getURL());
}
}
輸出
Connection established......
Underlying database supports batch updates
Driver name: MySQL-AB JDBC Driver
Database version: mysql-connector-java-5.1.12 ( Revision: ${bzr.revision-id} )
User name: root@localhost
URL for this database: jdbc:mysql:///mydatabase
程式碼解釋
獲取底層資料庫的 DatabaseMetaData 物件
使用 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");
使用 getMetaData() 方法獲取元資料物件,如下所示:
DatabaseMetaData dbMetadata = con.getMetaData();
以下 JDBC 程式建立與資料庫的連線,並檢索有關底層資料庫的資訊,例如資料庫的名稱、驅動程式名稱、URL 等。
此 Java 程式連線到 MySQL 資料庫 並使用 DatabaseMetaData 介面檢索元資料。它首先註冊 MySQL JDBC 驅動程式,並使用 DriverManager 建立連線。建立連線後,它建立一個 DatabaseMetaData 物件來獲取資料庫詳細資訊。該程式檢查資料庫是否支援批處理更新並列印結果。它還檢索並列印驅動程式名稱、驅動程式版本、使用者名稱和資料庫 URL。此過程對於有效地理解和管理資料庫屬性至關重要。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP