使用UCanAccess通过JDBC获取数据库名称

时间:2015-12-10 17:29:15

标签: java jdbc ucanaccess

编辑:

我正在测试我在另一篇文章中找到的代码,以查找数据库名称:

public static String getDBname(Connection conn) {
    String result = null;
    int i = 0;
    try {
        ResultSet rs = conn.getMetaData().getCatalogs();

        while (rs.next()) {
            System.out.println(rs.getString(i));
            i ++;
        }

    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return result;
}

然而它只是给我这个错误:

net.ucanaccess.jdbc.FeatureNotSupportedException: Feature not supported.
at net.ucanaccess.jdbc.UcanaccessDatabaseMetadata.getCatalogs(UcanaccessDatabaseMetadata.java:310)

还有其他办法吗?

1 个答案:

答案 0 :(得分:2)

对于UCanAccess,“数据库名称”只是.accdb或.mdb文件的名称。可以通过从

返回的连接URL中提取它来检索它
conn.getMetaData().getURL()

例如,

jdbc:ucanaccess://C:/Users/Public/UCanAccessTest.accdb;memory=false