【问题标题】:Exception: [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application " [duplicate]例外:[Microsoft][ODBC Driver Manager] 指定的 DSN 包含驱动程序和应用程序之间的体系结构不匹配“[重复]
【发布时间】:2014-11-24 18:38:56
【问题描述】:

当我尝试连接 MS Access (32 bit MS office) 时,我有 64 位 eclipse 并使用 64 位 jvm 配置了它,它给了我错误

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

我还在我的 Win 7 64 位机器上的 c:\windows\sysWOW64\odbcad32.exe 中定义了 DSN,甚至在 32 位和 64 位 jvm 上都尝试过,但每次我遇到同样的错误,但是当我用 32 位 Eclipse 运行相同的代码时,它工作正常,但我必须使用 64 位 Eclipse 运行,请帮助

【问题讨论】:

    标签: java eclipse jdbc jdbc-odbc


    【解决方案1】:

    尝试使用UCanAccess 代替 JDBC-ODBC 桥接驱动程序。

    UCanAccess 是纯 Java,因此使用它与 Access 数据库通信不应该有任何 32 位/64 位问题。此外,Java 8 中不再包含 JDBC-ODBC 桥驱动程序,因此如果您希望您的应用程序在 Java 8 上运行,则必须从它迁移出去。

    This answer 包含有关如何设置 Eclipse 以使用它的说明。

    【讨论】:

      【解决方案2】:

      您只能在 32 位应用程序中使用 32 位 ODBC 驱动程序。您要么需要 64 位 Access ODBC 驱动程序(如果您有 32 位 office iirc,则不可能),或者您需要切换到 32 位 Java/Eclipse。

      否则,请查看the answer by Luke Woodward 以使用 UCanAccess。

      【讨论】:

      • 现在工作正常,我使用 32 位 JRE 和 32 位 ODBC,工作正常,感谢马克给了我替代方案
      猜你喜欢
      • 2012-09-22
      • 1970-01-01
      • 1970-01-01
      • 2014-01-12
      • 2012-02-12
      • 2016-08-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多