如何确定给定 JDBC 连接的数据库类型(名称)?


获取您连接到的基础数据库名称的一种方式是调用 DatabaseMetaData 接口的 getDatabaseProductName() 方法。此方法以 String 格式返回基础数据库的名称。

因此,要使用 Java 代码检索当前数据库的名称,请执行以下操作:

  • 使用 getMetaData() 方法检索当前连接的 DatabaseMetaData 对象。
//Retrieving the meta data object
DatabaseMetaData metaData = con.getMetaData();
  • 然后,使用 DatabaseMetaData 接口的 getDatabaseProductName() 方法获取您连接到的基础数据库的产品名称,如下所示:
//retrieving the name of the database
String product_name = metaData.getDatabaseProductName();

示例

以下 JDBC 程序建立与数据库的连接,检索并打印基础数据库的名称。

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseMetaData_getDatabaseProductName {
   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
      String product_name = metaData.getDatabaseProductName();
      System.out.println("Name of the underlying database: "+product_name);
   }
}

输出版

Connection established......
Name of the underlying database: MySQL

更新于: 30-7-2019

3K+ 浏览量

开启你的 职业生涯

完成课程即可获得认证

开始学习
广告
© . All rights reserved.