我在我的Ubuntu 14.04服务器上安装了Jackcess 2.0.4 API(IP:192.168.0.130)。现在我想访问Windows 2003 R2服务器上的Microsoft Access 2010数据库(IP:192.168.0.125)。
我该怎么做?
答案 0 :(得分:1)
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打开文件时尝试更新数据库。如果发生这种情况,您很可能会遇到奇怪的错误,甚至可能会损坏数据库文件。