java - 64 位 Java 无法通过 ODBC Access 32 位 MS Access 数据库

标签 java ms-access odbc 64-bit

我有一台新的 64 位笔记本电脑,并安装了 STS 64 位和 Java 64 位。我正在尝试创建一个到 32-bi Microsoft 数据库的 ODBC 连接;但是默认的管理工具不提供 Access 驱动程序。谷歌搜索后,我看到在 C:\Windows\SysWOW64\odbcad32.exe 中有一个用于创建 32 位驱动程序的管理工具。但是,从它创建的 ODBC 连接给我一条错误消息,指示在我运行程序时体系结构不匹配:

[Microsoft][ODBC 驱动程序管理器] 指定的 DSN 包含驱动程序和应用程序之间的架构不匹配”

我认为这是因为 64 位 Java 正在尝试使用 32 位驱动程序。为了解决这个问题,我尝试将参数“-D32”放入 VM 参数中,但得到了相同的结果。

我正在考虑卸载 STS 和 Java 并将它们替换为 32 位版本。有更好的解决方案吗?

最佳答案

要加载 32 位 native 库,您需要有 32 位 JVM。

你不需要卸载Java,你可以安装任意多个版本。

您可以使用 64 位 JVM 与加载驱动程序的 32 位 JVM 通信,但这可能比您需要的更复杂。

关于java - 64 位 Java 无法通过 ODBC Access 32 位 MS Access 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12220914/

相关文章:

java - 如何让 Firebase 数据可供公众阅读?

ms-access - 对记录集使用 AddNew 时可以使用变量作为字段名称吗?

excel - 打开 Access 数据库并从 Excel 运行其中一个宏

c# - Odbc 命令。表名参数化

java - 访问 actionPerformed 中的变量

java - 如何使返回类型具有与打印函数相同的输出?

c# - 检查表是否存在,如果不存在,则创建它

linux - 使用 Tableau Desktop 连接到 IBM DB2 时出错?

java - 检索 SharedPreferences 在我的 SettingsActivity 中不起作用

vba - 如何遍历所有子窗体 MS Access VBA