如何使用 MS Access 实现 Java Persistence Api?

Posted

技术标签:

【中文标题】如何使用 MS Access 实现 Java Persistence Api?【英文标题】:How to Java Persistence Api with MS Access? 【发布时间】:2010-02-08 16:48:30 【问题描述】:

我找不到任何用于 ms 访问的 jdbc 驱动程序。那么如何将 MS Access 与 JPA 连接?

【问题讨论】:

【参考方案1】:

AFAIK,唯一可用的免费驱动程序是 JDBC-ODBC 桥(类型 1)。

Sun 分发的JDBC-ODBC Bridge Driver 是sun.jdbc.odbc.JdbcOdbcDriver,这就是they write 的含义:

请注意,Java 平台标准版 (Java SE) 6 中包含的桥接驱动程序仅适用于实验用途或没有其他驱动程序可用的情况。

如果这还不够,下面是 Ted Neward 在 Effective Enterprise Java 的第 49 项中所写的内容:

(...) JDBC-ODBC 驱动程序是一个不受支持、漏洞百出的 1.0 驱动程序,速度非常慢,并且传闻在某些 ODBC 驱动程序配置中会泄漏内存 (...)

Microsoft 的情况可能会好一些(com.ms.jdbc.odbc.JdbcOdbcDriver),但我预计不会出现奇迹。

因此,如果这是针对企业应用程序,不妨考虑花几美元购买商业类型 4 JDBC 驱动程序。请参阅this previous answer 了解一些选项。

【讨论】:

另请注意 - 在 Access 和 Excel 的情况下,没有 64 位 ODBC 驱动程序 @Ibrahim 不客气。顺便说一句:识别一个好的答案的常用方法是支持它;-) 我从未听说过com.ms.jdbc.odbc.JdbcOdbcDriver,也没有通过谷歌找到任何关于它的信息。你有参考吗?无论如何它都可以与 MS Access 一起使用吗?【参考方案2】:

看起来您根本不需要 MS 驱动程序。只需使用 sun ODBC 驱动程序。 看文章here.

【讨论】:

【参考方案3】:

我从来不需要它,但我听说过这个的好东西:http://jackcess.sourceforge.net/

【讨论】:

【参考方案4】:

您可以使用 UcanAccess:http://ucanaccess.sourceforge.net/site.html 它是 Java 8 以来 ODBC 驱动程序的一个很好的替代品

【讨论】:

以上是关于如何使用 MS Access 实现 Java Persistence Api?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 MS Access 数据库与 Java 8 连接?

如何将 java 连接到 Ms Access 2010?

java直接存取MS Access的mdb数据库文件

如何在 Java 中刷新 MS Access 数据库

如何通过 Java 从 MS Access 2007 数据库中读取 Unicode 字符?

如何在 SQL for MS Access 中实现分页?