gpt4 book ai didi

php - 使用 php/Java 读取 foxpro DB

转载 作者:行者123 更新时间:2023-12-01 08:41:27 24 4
gpt4 key购买 nike

我正在寻找一个代码片段/库来使用来自 Linux 服务器的 php/Java 通过网络从第三方 foxpro DB 读取数据。有没有可用的图书馆?有些人似乎在为 php 使用 Dbase 库?这行得通吗?

除了默认值(数据库名、用户名、密码)之外,我还需要 Foxpro DB 中的哪些参数。 DBF 名称,连接字符串??

最佳答案

不久前,我正在研究相同的解决方案,但遇到了许多死胡同。我想要一个与 php 一起使用的解决方案。
我试过的其中一些是
1. Xbase 驱动程序:它们适用于简单的 DBF,但它们不支持较新的数据类型,如 DateTime 字段,因此排除了该选项。
2. VFP ODBC 驱动程序 :如果您正在使用旧 VFP 版本,这很有效,因为该版本的开发已停止并且不支持较新的自动增量字段而且你不断收到奇怪的错误,比如“不是一张 table ”,这让你完全发疯。“VFP ODBC 驱动程序不支持具有自动增量字段的表”
3. 商业工具:还有很多其他商业选项显然不适合我
4. 免费工具(DBF 到 CSV) 将 DBF 转换为 csv 或类似文件,但如果您只进行选择,这将起作用。您无法进行任何更新。

最后对我有用的选项是:Visual Foxpro OLE 驱动程序。

您可以从 here 安装 OLE 驱动程序.示例代码看起来像

$conn = new COM("ADODB.Connection");$conn->Open('Provider=VFPOLEDB.1;Data Source="C:\\testDB.dbc";'); $query = "SELECT * FROM TABLE1 ";$rs = $conn->Execute($query) or die("Error in query: $query. " . $conn->ErrorMsg());while (!$rs->EOF) {    echo " Got COL1: " . $rs->Fields("COL1") . " :: COL2: " . $rs->Fields("COL2") . " id: " . $rs->Fields("ID") . "\n";    $rs->MoveNext();}$query = "UPDATE TABLE1 set COL1 = \"AA\", COL2 = \"Updated value\" ";$conn->Execute($query);

我没有找到任何关于 php 的文档,但你可以引用 MSDN ADO API并使用类似的 API,尤其是如果您想做基于事务的操作。

$conn->BeginTrans();....$conn->CommitTrans();or $conn->RollbackTrans();

关于php - 使用 php/Java 读取 foxpro DB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2238659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com