我使用ADO和PHP的基本SQL查询,但行计数始终返回-1。我错过了什么?
这是我的代码:
include 'constants.php';
// Create an instance of the ADO connection object
$conn = new COM ("ADODB.Connection")
or die("Cannot start ADO");
// Open the connection to the database
$conn->open(DB_CONN_STR);
$query = "select * from table_name";
$rs = $conn->execute($query);
if (!$rs) {
return;
}
else {
return $rs->RecordCount();
}
我知道这张桌子有价值......我错过了什么?
答案 0 :(得分:2)
答案 1 :(得分:0)
我使用Adodb和PHP有一个类似的问题,带有PDO mssql驱动程序。
GetOne
或LimitQuery
执行了SQL查询Execute
RecordCount
的调用将错误地返回-1
(但我可以迭代行)。我发现一些Adodb函数在执行查询之前将$ADODB_COUNTRECS
标记为false
。如果出现错误,则该标记未设置回true
,这就是RecordCount
返回-1
的原因。
我在我的异常构造函数中将全局变量设置为true
,这解决了问题。