无法与Windows的64位连接到MS Access数据库[复制](Can't connec

2019-10-17 11:56发布

可能重复:
Microsoft Access和Java的JDBC-ODBC错误

我有我的创造DB开始与问题。 我的Windows 7 64位版本,发现错误是与Microsoft Office是32位。 我能够用在C的odbcad32.exe的创建我的Access数据库:\ WINDOWS \ SYSWOW64 \ odbcad32.exe的

现在在我的Java代码我只是试图让连接的,但我遇到了问题,又似乎是相关的,并让我觉得顶多我只是没有设置数据库正确。 JavaDB之外是我在ODBC创建我的数据源名称:DSA,你可以在这里看到: http://i.imgur.com/9n19x.png

我一直在寻找所有在互联网上,但真的不能找到一个坚实明确的答案。 真的可以用帮助下,在先进的感谢!

编辑:我清理我的代码,现在我的错误是不同的。 我在我的项目文件夹我的物理数据库文件在C:\ Eclipse的\ PROJECT1的\ src - 我已经设置它也像我在ODBC说是相同的。

编辑编辑:嗯,研究几个小时我结束了之后只计算出来最后。 这些问题是没有那么多我的代码,因为它是与Windows x64BIT和Office 32个驱动程序的兼容性问题。 这篇文章帮助我解决它,现在它的作品! http://www.selikoff.net/2011/07/26/connecting-to-ms-access-file-via-jdbc-in-64-bit-java/

import java.sql.*;

public class DBTester {

public static void main(String[] args) throws SQLException, ClassNotFoundException {

try 
{

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");


    String fileName = "C:/Eclipse/school/bin/RegistrationDB.mdb";


    String dB = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ="+fileName;
    Connection connection = DriverManager.getConnection(dB,"","");

    System.out.println("connected");

    Statement s = connection.createStatement();
    s.close();
    connection.close();

} catch(Exception ex)
{

    ex.printStackTrace();

}


} // end main

} // end class

Answer 1:

大量的研究和看到吨这里挖掘相关的悬而未决的问题和其他地方后,我偶然发现了一个简单的修复,使我想我的头撞成了我的办公桌上的一篇文章。

http://www.selikoff.net/2011/07/26/connecting-to-ms-access-file-via-jdbc-in-64-bit-java/

如果你有一个64位的Windows 7机器和访问的32位版本 - 你将有问题。 从这个家伙的文章中,我能够卸载我目前的MS Access - 和-reinstall一个64位版本。 再加入我的DB源和一切工作。



文章来源: Can't connect to MS Access DB with Windows-64bit [duplicate]
标签: java odbc