当前位置: 首页 > 面试题库 >

从Java访问Visual FoxPro数据库

赵炯
2023-03-14
问题内容

一个星期以来,我一直在尝试从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的名称之一

希望这对其他人有帮助。



 类似资料:
  • 问题内容: 我有一个要求,即只能从本地主机访问mysql数据库。我必须实现一个可以访问数据库的servlet,以允许该系统中的其他服务器访问数据(servlet可以充当代理)。但是,此系统由一个远程服务器组成,该服务器下载执行以下语句的大部分数据: 有人可以建议我如何编写一个以有效方式流式传输此类数据的servlet吗(我是数据库新手)? 问题答案: 首先,我不建议为此使用servlet。有关正确

  • 问题内容: 我正在使用jQuery 1.4.2创建ajax应用,并且尝试使用get(),post()和ajax()方法本身。我的php服务返回: 在我的成功回调中,我尝试以json.status和json [0] [0]的身份访问,但它始终返回“ undefined”。我究竟做错了什么? 我已经搜索了好几天了。我该如何访问返回的数据?任何帮助,将不胜感激。 问题答案: 要访问该状态值,您需要: 这

  • 问题内容: 我似乎无法弄清楚如何使用WSGI访问POST数据。我在wsgi.org网站上尝试了该示例,但没有成功。我现在正在使用Python3.0。请不要推荐WSGI框架,因为这不是我想要的。 我想弄清楚如何将其放入fieldstorage对象。 问题答案: 假设您试图将POST数据仅获取到FieldStorage对象中:

  • 问题内容: 我已经创建了我的应用程序并在Windows下对其进行了测试,该Windows可以在Access DB文件中进行读写操作。 但是在现实世界中,它将在linux环境中运行,而我现在遇到了一个大问题,似乎没有用于Linux的驱动程序来访问ms acess db,这是我现在进行连接的方式: 有没有人遇到过类似的事情,有人建议我该怎么办? 这是我在linux上得到的例外: 问题答案: 在Linu

  • ActiveX Data Objects (ADO) 是一项容易使用并且可扩展的将数据库访问添加到 Web 页的技术。可以使用 ADO 去编写紧凑简明的脚本以便连接到 Open Database Connectivity (ODBC) 兼容的数据库和 OLE DB 兼容的数据源。如果您是一个对数据库连接有一定了解的脚本编写人员,那么您将发现 ADO 命令语句并不复杂而且容易掌握。同样地,如果您是一

  • 对许多Web应用程序而言,数据库都是其核心所在。数据库几乎可以用来存储你想查询和修改的任何信息,比如用户信息、产品目录或者新闻列表等。 Go没有内置的驱动支持任何的数据库,但是Go定义了database/sql接口,用户可以基于驱动接口开发相应数据库的驱动,5.1小节里面介绍Go设计的一些驱动,介绍Go是如何设计数据库驱动接口的。5.2至5.4小节介绍目前使用的比较多的一些关系型数据驱动以及如何使