欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php 读取vfp 8.0,9.0所产生的dbf文件

程序员文章站 2022-06-07 13:31:04
...
VFP 9.0 PHP odbc 求大神指导。。。

由VFP8.0以上制造的DBF文件,自带的Tabel Type> autoinc field 或者Blob field,想通过PHP读取,不行吗?
代码很简单如下》
$add='c://BatMan//Daten//ladert2.DBF';
$e="Driver={Microsoft Visual FoxPro Driver};SourceType=DBf;SourceDB=".$add.";Exclusive=NO;collate=Machine;NULL=NO;DELETED=NO;BACKGROUNDFETCH=NO;";
$odbc=odbc_connect($e,'','');
echo $add;
$query = "select * from ".$add.";";
$result_id = odbc_do($odbc, $query);
odbc_result_all($result_id, "border=1 width=50%");
odbc_close($odbc);
?>

报错》
c://BatMan//Daten//ladert2.DBF
Warning: odbc_do(): SQL error: [Microsoft][ODBC Visual FoxPro Driver]Not a table., SQL state S0002 in SQLExecDirect in C:\xampp\htdocs\dbf.php on line 7

文件的结构:


安装了ODBC驱动,然后读取在8。0以前的DBF文件可行,但是最新的就无解了?现在网上的odbc驱动是不是只是针对老版本的?
不知道大神们有什么良策?

回复讨论(解决方案)

补充。。。
操作环境:Apache 2.4.3, PHP 5.4.7 ,VFP 9.0,ODBC 驱动。。vfpodbc_German Version 1.0

哥?,你用PDO??了??

但是谢谢您的回复。。
以前没有接触过PDO,不是很理解。。

我后来尝试安装了VFPOLEDB驱动,然后使用adodb来链接,有些可以连接returen value是0.3.48.50的可以连接,但是49的关于autoinc field 还是不行。。

问题搞定了。。我发现我没有启动Window服务里面的COM+服务。。