这甚至可能吗?
我找到了
$user='';
$password='';
$mdbFilename="myDatabase.accdb";
$connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=$mdbFilename", $user, $password);
$sql="SELECT * FROM [tblNameHere]";
$rs=odbc_exec($connection,$sql);
$myResults=odbc_result($rs,"fieldNameHere");
echo 'First entry: ' . $myResults;
//Move to next record here
$myResults=odbc_result($rs,"fieldNameHere");
echo 'Second entry: ' . $myResults;
odbc_close($connection);
这只是将第一个记录放两次,我可以返回第一个记录的任何字段值,但是我找不到让它更改为下一个记录,如果它存在。
答案 0 :(得分:1)
您需要遍历记录,使用odbc_fetch_row
$sql="SELECT * FROM [tblNameHere]";
$rs=odbc_exec($connection,$sql);
while (odbc_fetch_row($rs)) {
$myResults =odbc_result($rs,"fieldNameHere");
echo "Entry: " . $myResults;
}
odbc_close($connection);
(PHP 4,PHP 5)odbc_fetch_row - 获取一行
说明
bool odbc_fetch_row ( resource $result_id [, int $row_number ] )
获取odbc_do()
或返回的一行数据odbc_exec()
。调用odbc_fetch_row()
后,该行的字段 可以使用odbc_result()
访问。
<小时/> “手动”
$rs=odbc_exec($connection,$sql);
$myResults=odbc_result($rs,"fieldNameHere");
echo 'First entry: ' . $myResults;
//Move to next record here
odbc_fetch_row($rs); //<----MoveNext() manually
$myResults=odbc_result($rs,"fieldNameHere");
echo 'Second entry: ' . $myResults;