创建与.accdb访问文件的连接

时间:2013-08-15 02:30:51

标签: java odbc

我已经上了几天了,现在正在网上寻找解决方案。我在这里尝试做的是连接到具有扩展名.accdb的Access 2010数据库我已成功连接到扩展名为.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;";

1 个答案:

答案 0 :(得分:0)

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