2

我已经上这门课几天了,现在在网上搜索试图找到一个解决方案。我在这里尝试做的是连接到带有扩展名的 Access 2010 数据库.accdb我已经成功连接到带有扩展名.mdb但不是.accdb

我已尝试卸载 Office 并为 x64 版本重新安装它,然后安装 Access x64 工具。我使用以下代码时收到的错误如下:

java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

在这一点上,我不知道是什么原因造成的。需要指出的是,我需要在没有指定 DSN 的情况下进行此设置,因为它可能在多台机器上运行,我不想在每台机器上都设置和维护 DSN。

String database = "jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\\Users\\Brandon\\Dropbox\\Work\\Angent Profiles\\Database1.accdb;";
Connection conn = null;

    try {
        conn = DriverManager.getConnection(database, "", "");
    } catch (SQLException SQLE) {
        System.out.println("ERROR: " + SQLE);
    } 

对此的任何建议将不胜感激。

编辑:

C:\Windows\system32>java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)

C:\Windows\system32>

编辑:

Provider=Microsoft.ACE.OLEDB.15.0;Data Source=C:\Users\Brandon\Dropbox\Work\Angent Profiles\Database1.accdb;Persist Security Info=False



String database = "jdbc:odbc:DRIVER={Microsoft.ACE.OLEDB.15.0 (*.mdb, *.accdb)};Data Source=C:\\Users\\Brandon\\Dropbox\\Work\\Angent Profiles\\Database1.accdb;";
4

1 回答 1

0

我相信您需要运行 32 位 JRE 才能连接到访问数据库。据我了解,目前没有可用的 64 位访问 ODBC 驱动程序。

于 2013-09-11T04:24:48.287 回答