从Java访问Visual FoxPro数据库

一个星期以来,我一直在尝试从Java访问Visual Fox Pro数据库。我感到很绝望,因为我的项目预算和时间紧迫。(和其他项目一样,哈哈哈)

我有一个.dbf,一个.cdx和一个.fpt文件。我需要能够查找记录,提取数据和更新数据。我没有VFP许可证。

我希望有人能提供一些指导或可行的例子。如果唯一的方法是购买司机,我将根据收到的建议考虑考虑。

这是我尝试过的简短描述。

我发现了这个xBaseJ:可以读写dBase文件的java对象。但这不会支持CDX索引文件。

还发现此示例访问dbf。但是我的测试显示了此异常:java.sql.SQLException:

[Microsoft][Controlador ODBC dBase] La tabla externa no tiene el formato

esperado. 我猜想此错误的英语翻译可能是这样的:java.sql.SQLException: [Microsoft][ODBC dBase

Driver] External table is not in the expected format

由于该错误,我想我需要更新的驱动程序。在此Microsoft页面中,说他们不再具有ODBC驱动程序,并且每个人都应该使用OLE DB

Provider。问题是我还没有找到从Java使用它的方法。

据我所知,没有办法直接做到这一点。在这里发现有人在谈论JACOB“事物”,有人在评论需要创建C

++或C#“事物”以便能够完成我需要的事情。我认为他是在谈论“ JACOB项目:JAva-

COM桥”。但是我也不知道COM调用实际上必须执行的操作。

尚未找到合适的JDBC驱动程序。

谢谢你们。

伊利

回答:

我找到了方法。

我最终使用了JACOB(从这里开始)。

  1. 从http://msdn.microsoft.com/zh-cn/vfoxpro/bb​​190232下载并安装了Visual FoxPro OLE DB驱动程序。直接链接是:用于Visual FoxPro 9.0 SP2的Microsoft OLE DB提供程序
  2. 下载了JACOB 1.17版二进制文件和源代码。
  3. 添加jacob.jar为Java构建路径库
  4. 复制jacob-1.17-x86.dll到项目目录(与Eclipse的.project文件相同的位置)
  5. jacob-1.17_src\jacob-1.17\samples\com\jacob\samples\ado内容复制到我的src目录中,并:

    1. 删除ms目录
    2. 重命名test.javaMain.java
    3. 将连接字符串更改为: String connectStr = "Provider=vfpoledb;Data Source=C:\\path\\to\\Data\\;Collating Sequence=general;";
    4. 更改了queryStr以匹配dbf的名称之一

希望这对其他人有帮助。

以上是 从Java访问Visual FoxPro数据库 的全部内容, 来源链接: utcz.com/qa/415427.html

回到顶部