DISTINCT子句不适用于linux上的odbc_exec

时间:2015-04-21 10:53:58

标签: linux ms-access odbc mdbtools

我正在尝试从Linux(Ubuntu)上的.mdb文件(MS Access)中读取行,我已经安装了php5-odbc,mootools等...我的代码是:

$dbName = "/path/file.mdb";

$handle=odbc_connect ("DRIVER=MDBTools; DBQ=$dbName;", "", "");

if(!$handle) {
   print "<p>Uh-oh! Failure to connect to DSN: <br />";
   odbc_errormsg();
}
else {
   print "done";
   $resultset=odbc_exec ($handle, "SELECT DISTINCT(col) FROM tab");
   odbc_result_all($resultset, "border=2");
   odbc_close($handle);
}

如果我将SQL子句更改为SELECT col FROM tab它运行良好...而是使用DISTINCT子句我有这个错误:

odbc_exec(): SQL error: [unixODBC]Couldn't parse SQL, SQL state 08001 in SQLExecDirect

我尝试过使用方括号而且没有,但它是一样的......帮助!!

1 个答案:

答案 0 :(得分:0)

正确的语法是:

SELECT DISTINCT col FROM tab