【发布时间】:2013-12-03 11:46:34
【问题描述】:
我在使用 Visual fox pro OLE DB 提供程序 (vfpoledb.dll) 在 php 中写入 VFP 数据库时遇到问题。使用 select 语句访问数据没有问题,如该问题中所述和回答:
但是,在写作方面我遇到了麻烦
Cannot update the cursor ''tablename'', since it is read-only.
我认为解决此问题的方法是在打开命令中包含 Mode="ReadWrite"(也尝试过共享独占),如msn article 中所述,如下所示:
$conn = new COM("ADODB.Connection");
$conn->Open('Provider="VFPOLEDB.1";Data Source="' . $filename . '";Mode="ReadWrite";');
但是在执行如下语句时我仍然收到同样的错误:
$up = $conn->Execute("UPDATE tablename SET fieldname='Testing' WHERE fieldname = 'somevalue'");
有什么想法,有可能吗?
还有其他人喜欢封装遗留系统吗?
【问题讨论】:
-
这是什么版本的驱动?我目前正在使用 ODBC 驱动程序 6.0 版,我打算使用 VFP OLE 驱动程序 9.0 版
-
据我所知它是 v1.2(我厌倦了通过在此处运行安装程序来更新它:microsoft.com/en-gb/download/details.aspx?id=14839)
-
好的,谢谢。这就是我说的那个。在您的问题中,您声明它是 vfpodbc.dll,但 VfpOleDB.dll 是正确的。
-
我的错误,感谢您指出这一点。
标签: php visual-foxpro