从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(从这里开始)。
- 从http://msdn.microsoft.com/zh-cn/vfoxpro/bb190232下载并安装了Visual FoxPro OLE DB驱动程序。直接链接是:用于Visual FoxPro 9.0 SP2的Microsoft OLE DB提供程序
- 下载了JACOB 1.17版二进制文件和源代码。
- 添加
jacob.jar
为Java构建路径库 - 复制
jacob-1.17-x86.dll
到项目目录(与Eclipse的.project文件相同的位置) - 将
jacob-1.17_src\jacob-1.17\samples\com\jacob\samples\ado
内容复制到我的src目录中,并:- 删除
ms
目录 - 重命名
test.java
为Main.java
- 将连接字符串更改为:
String connectStr = "Provider=vfpoledb;Data Source=C:\\path\\to\\Data\\;Collating Sequence=general;";
- 更改了queryStr以匹配dbf的名称之一
- 删除
希望这对其他人有帮助。
以上是 从Java访问Visual FoxPro数据库 的全部内容, 来源链接: utcz.com/qa/415427.html