<?
$myDB=odbc_connect("Dogs","","");
$query="select name,weight from dog_list";
$result=odbc_do($myDB,$query);
while(odbc_fetch_row($result)){
        print odbc_result($result,"name");
        print odbc_result($result,"weight");
}
?>后台错:
[Tue Nov 24 02:52:29 2009] [error] [client 192.168.41.30] PHP Warning:  odbc_do() [<a href='function.odbc-do'>function.odbc-do</a>]: SQL error: [unixODBC]Couldn't parse SQL\n, SQL state 08001 in SQLExecDirect in /var/www/html/b.php on line 4
[Tue Nov 24 02:52:29 2009] [error] [client 192.168.41.30] PHP Warning:  odbc_fetch_row(): supplied argument is not a valid ODBC result resource in /var/www/html/b.php on line 5[root@yjj logs]# cat /etc/odbc.ini 
[Dogs]
Description = Microsoft Access Database of Dogs
Driver = MDBToolsODBC
Database = /home/DKRecord.mdb
Servername = localhost
UserName =
Password =
port = 5432[root@yjj logs]# cat /etc/odbcinst.ini 
[MDBToolsODBC]
Description             = MDB Tools ODBC drivers
Driver          = /usr/lib/libmdbodbc.so.0
Setup           = 
FileUsage               = 2
CPTimeout               = 
CPReuse         = 
请问这个为什么连接有问题,是我哪里没配置正确么?

解决方案 »

  1.   

    odbc和access都是微软Windows下的东西,若要用在Linux下需安装支撑软件
      

  2.   

    access是不可能跑在linux平台的,lz你连得是远程的access么?
      

  3.   

    由于项目原因,那个access是打卡系统数据库(更改数据库需要买更高级版本的打卡系统),不能改,而我们服务器是linux,所以必须在linux下读取access(将access文件共享到linux本地,通过samba实现)
    网上有实现的方式 但是都很旧 我是在其中遇到的问题 
    所有能装的驱动都安装了 unixODBC,mdbtools-odbc,mdbtools
      

  4.   

    安装vmware,换数据库都不能实现,另处于安全考虑,不允许打卡系统的机器向我们服务器传送数据,也就是说在打卡系统做小程序来抓取数据是不允许传输到我们的数据库服务器.
    限制很多,项目比较麻烦,希望各位提提建议~~~沮丧的就不要提了~~已经倍受打击
      

  5.   

    我也遇到这个问题哦,我从access 读出来的中文全是乱码,连接没有问题。