获取已连接的基础数据库的名称的一种方法是调用DatabaseMetaData接口的getDatabaseProductName()方法。此方法以String格式返回基础数据库的名称。
因此,要使用Java代码检索当前数据库的名称-
使用getMetaData()方法检索当前Connection的DatabaseMetaData对象。
//检索元数据对象 DatabaseMetaData metaData = con.getMetaData();
然后,使用DatabaseMetaData接口的getDatabaseProductName()方法获取您已连接的基础数据库的产品名称,如下所示:
//检索数据库的名称 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 { //注册驱动程序 DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //获得连接 String mysqlUrl = "jdbc:mysql://localhost/mydatabase"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); //检索元数据对象 DatabaseMetaData metaData = con.getMetaData(); //检索数据库的名称 String product_name = metaData.getDatabaseProductName(); System.out.println("Name of the underlying database: "+product_name); } }
输出结果
Connection established...... Name of the underlying database: MySQL