首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接到可视FoxPro9表时出现php5 odbc_connect()函数错误

问连接到可视FoxPro9表时出现php5 odbc_connect()函数错误
EN

Stack Overflow用户
提问于 2011-04-05 05:30:43
回答 3查看 8K关注 0票数 2

我在已经安装了unixODBC和php5-odbc包的Ubuntu10.10服务器上运行php5。在连接过程中,我一直收到一个错误-代码:

代码语言:javascript
复制
$data_source = 'DRIVER={Microsoft dBASE Driver (*.dbf)};Data Source=//128.251.xxx.xxx/lv_apps/AppsLON/CData/dbf/cdma';"", "");
$conn = odbc_connect($data_source, "", "");
if (!$conn)
    exit("Connection Failed: " .$conn );

错误消息:

代码语言:javascript
复制
1 Warning: odbc_connect(): SQL error: [unixODBC][Driver Manager]Data source name not found, and no default driver specified, SQL state IM002 in SQLConnect in /var/www/vfptest.php on line 6 

我在/etc/php5/apache2/php.ini和/etc/php5/cli/php.ini这两个文件中添加了extention=dbase.so和extention=odbc.so,并使用以下命令重新编译了php安装:

代码语言:javascript
复制
sudo ./configure --prefix=/usr --enable-dbase=shared --with-unixODBC

我还访问了unixODBC和pecl,分别安装了unixODBC和dbase库,但没有成功。

我还找到了这个链接:http://www.devlist.com/ConnectionStringsPage.aspx,其中声明为了创建到foxpro数据库的ODBC连接,我使用以下行:

代码语言:javascript
复制
Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=c:\demo.dbc;Exclusive=No;NULL=NO;Collate=Machine;BACKGROUNDFETCH=NO;DELETED=NO 

然而,这对我来说仍然不起作用;可能是因为我没有安装visual foxpro驱动程序,也没有指向我不知道的驱动程序path...but的odbc.ini文件。

EN

回答 3

Stack Overflow用户

发布于 2011-04-05 20:20:34

简而言之,- odbc_connect()接受;一个ODBC数据源名称(DSN),用户名和密码--

http://php.net/manual/en/function.odbc-connect.php

据我所知,Linux没有VFP ODBC驱动程序,因此您很可能需要采用ODBC Bridge解决方案,例如-

http://uda.openlinksw.com/odbc-odbc-mt/

它有一个客户端/服务器架构--

Linux客户端-- php ODBC Application OpenLink通用ODBC驱动程序(瘦多层ODBC客户端)

Windows服务器-- OpenLink请求代理(多层服务器) OpenLInk代理(多层服务器) Fox Pro ODBC DSN (预配置) Fox Pro文件...

我希望这能帮到你?

票数 1
EN

Stack Overflow用户

发布于 2011-04-06 05:12:45

在MSDN network上查看这篇文章的最底层

您发布的驱动程序行是“VFP connection string is not supported for ...an tables a version is a version you 6.”。

票数 1
EN

Stack Overflow用户

发布于 2011-04-05 05:32:55

虽然不熟悉linux连接到VFP,但是,这种VFP的odbc连接连接到路径,而不是特定表。一旦与路径的连接有效,您就可以查询该位置的任何.DBF表。

虽然我无法回答您的具体连接信息,但我找到了此链接

http://www.phpfreaks.com/forums/index.php?topic=296832.0

它显示了连接到数据源...注意它标识了'DRIVER={Microsoft (*.dbf)};datasource=/ dBASE /dir/file.dbf;‘所使用的...您可能必须找到这个驱动程序和路径信息的组合(我仍然会先尝试不使用特定的.dbf文件)。

希望这能帮上忙..

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5544580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档