我一直試圖通過JDBC連接到MS Access 2007數據庫。我的JDK是JDK 1.6u18 64位,操作系統是Windows 7 64位。但問題是我無法使用Windows\system32\odbcad32.exe
創建DSN,因爲它根本不顯示MS Access的ODBC驅動程序,它只顯示MS SQL Server的驅動程序。無法通過Win7上的JDBC連接到MS Access數據庫64位
當試圖點擊配置「MS Access數據庫」(這是一個已經創建的DSN,我猜)時,它首先顯示錯誤消息:「Microsoft Access驅動程序的安裝例程(* .mdb,*。 accdb)ODBC Driver找不到,請重新安裝驅動程序。「 然後另一條消息:「發現錯誤!指定的DSN包含驅動程序和應用程序之間的體系結構不匹配。」
我無法重新安裝MDAC,因爲它不適用於Windows 7(它自帶的WDAC)。
Windows\SysWOW64
中的odbcad32.exe的確讓我爲MS Access創建了一個DSN,它顯示了正確安裝的驅動程序。然而,通過Java程序試圖連接到DSN的時候,我得到以下異常:
java.sql.SQLException: [Microsoft][ODBC Driver Manager] The specified DSN contains
an architecture mismatch between the Driver and Application
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at AccessTest.main(AccessTest.java:19)
可能是什麼問題,我有什麼做的就是它的工作?我的操作系統以及JDK都是64位的。我無法連接到Access 2007數據庫,我認爲它是32位的?任何幫助將不勝感激。此外,如果有人認爲這不是一個正確的地方這個問題,我提前道歉。然後請引導我到適當的論壇。
另一種選擇是爲MS Access找到第三方JDBC驅動程序。但我確實需要知道我的配置有什麼問題。 : -/
PS:我知道有很多更好的數據庫可用,但有幾個不幸的原因,我有只能使用MS Access並且必須讓它工作。
如果你還沒有完成@Remou的建議,這對你沒有任何好處。 – 2010-05-20 01:18:17