其实你这个问题最好到 Access 或 asp 版面去问,得到的回答要经典的多!读取Access数据库表名实例。 
asp:
<%
strConn="DBQ="+server.mappath("netBook.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set objConn=server.createobject("Adodb.connection")
objConn.open strConn
set rsSchema=objConn.openSchema(20)
rsSchema.movefirst
Do Until rsSchema.EOF
   if rsSchema("TABLE_TYPE")="TABLE" then
      response.write rsSchema("TABLE_NAME") & "<br>"     
   end if
   rsSchema.movenext
Loop
set objConn=nothing
%>php: 根据上例改写
<?php
$conn = new com("ADODB.Connection");
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("netBook.mdb");
$conn->Open($connstr);
$rs = $conn->openSchema(20);
$rs->movefirst();
echo "<table><tr>";
for($i=0;$i<$rs->Fields->count;$i++) {
  $f = $rs->Fields($i);
  echo "<th>{$f->name}</th>";
}
echo "</tr>";
while(! $rs->eof) {
  echo "<tr>";
  for($i=0;$i<$rs->Fields->count;$i++) {
    $f = $rs->Fields($i);
    echo "<td>{$f->value}</td>";
  }
  echo "</tr>";
  $rs->MoveNext();
}
echo "</tr></table>";
?>
在输出结果中:
TABLE_TYPE 列为 TABLE 的 TABLE_NAME 列就是所要的结果
我不知道为什么要openSchema(20),20是什么意思?
我只知道程序执行结果是正确的。