我已经在我的 Ubuntu 14.04 服务器上安装了 Jackcess 2.0.4 API(IP:192.168.0.130)。现在我想访问 Windows 2003 R2 服务器上的 Microsoft Access 2010 DB(IP:192.168.0.125)。
我该怎么做?
最佳答案
Jackcess 需要能够打开数据库文件,因此
数据库文件需要位于 Windows 服务器上的共享文件夹中,并且
必须设置 Ubuntu 服务器来挂载 Windows 共享,最有可能使用与此处描述的步骤类似的步骤:
完成后,在 Ubuntu 服务器上运行的 Java 代码应该能够使用 Jackcess 通过从安装位置打开 Access 数据库文件来操作它。
例如,如果您已将 Ubuntu 服务器配置为在 /mnt/windowsshare
处提供 Windows 共享,那么 Jackcess 将简单地打开该文件夹中的数据库文件:
import com.healthmarketscience.jackcess.*;
// ...
Database db = DatabaseBuilder.open(new File("/mnt/windowsshare/Database1.accdb"));
重要提示:
Jackcess直接读写Access数据库文件(.accdb和.mdb文件)。它不使用 Access 数据库引擎 (ACE/Jet),也不尝试重新创建 ACE/Jet 提供的多用户支持。因此,Jackcess本身没有办法管理多个并发用户。 (引用:here。)
如果 Access 数据库驻留在 Windows 共享上,那么在 Jackcess 打开文件时,其他用户或进程至少有可能尝试更新数据库。如果发生这种情况,您很可能会遇到奇怪的错误,甚至可能会损坏数据库文件。
关于java - 使用 Jackcess 从 Ubuntu 14.04 服务器访问 Microsoft Access 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25843505/