使用JDBC将Microsoft Access数据库连接到Java - 错误

问题描述:

我试图从使用Java的MS Access数据库获取信息。使用JDBC将Microsoft Access数据库连接到Java - 错误

首先,我添加ODBC从这里

C:\Windows\SysWOW64\odbcad32.exe 

,因为我的工作在Windows 7

,然后,我用这个代码

String driver = "sun.jdbc.odbc.JdbcOdbcDriver"; 
Class.forName(driver);   

String db = "jdbc:odbc:DataSource"; 
con = DriverManager.getConnection(db); 

但我得到这个错误

[Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application 

after使用Google搜索这个错误,我认为问题在于我正在使用Windows 7 64位和MS Office 32位。 问题是如何解决这个问题,而没有MS Office 64位?

谢谢。

+0

你解决了吗? – 2012-03-19 15:41:07

在almight msdn,我引用:

如果使用64位odbcad32.exe的配置或删除的DSN是 连接到32位驱动程序,例如,驱动程序做微软访问 (* .mdb)中,您将收到以下错误消息:

指定的DSN包含驱动程序 和应用

之间的结构不匹配要解决此错误,使用32位odbcad32.exe进行配置,或者使用 删除DSN。

+0

谢谢,但我怎样才能使用odbcad32.exe的32位版本?我试图使用这个c:\ windows \ system32 \ odbcad32.exe,但是当打开ODBC时,当我按下Add按钮时,我在Create New Data Source对话框中什么都没有。所以,我可以添加一个新的驱动器。 – user1178619 2012-03-09 01:06:16

+0

正如我已阅读,我必须使用C:\ Windows \ SysWOW64 \ odbcad32.exe,因为我正在使用Windows 7! – user1178619 2012-03-09 01:13:25

+0

@ user1178619您是否阅读过整个链接? 'odbcad32.exe'中的** 32 **不代表它是32位版本。如果你没有它,你必须下载32位版本的'odbcad32.exe'。 – 2012-03-09 08:55:02