可以';t计数PHP结果集中命中SQL数据库的记录


Can't count records in PHP result set hitting a SQL database?

我有一个PHP应用程序,它需要查询Microsoft SQL数据库。这很容易,但我很难从结果集($rs)中获得"num_rows"。。。这是我的代码,还有我尝试过的一些东西——感谢您的帮助!

$conn=新COM("ADODB.Connection")或die("无法启动ADO");$connStr="PROVIDER=SQLOLEDB;SERVER=SQLServerIP;UID=UserID;PWD=MyPassword;DATABASE=MyDatabase";$conn->打开($connStr);$rs=$conn->执行($q);//尝试了以下操作:-出现错误$num=$rs->字段计数;//这个:-给出错误$num=$rs->num_rows;//有什么想法吗?

我知道$rs保存数据,因为我可以用成功地提取数据

echo$rs->Fields('Column1');echo$rs->Fields('Column2');

您没有使用正确的API。尝试$rs->Fields->Count()。提到http://php.net/manual/en/class.com.php因为您正在使用Com类访问数据库。

试试这个,我认为它可能会帮助你

int mssql_num_rows ( resource $result )
mssql_num_rows() // returns the number of rows in a result set.

这里是文档的链接,您需要在这里输入链接描述

如果这是代码的完整片段,那么看起来您缺少了实际的SQL查询。

见行:$rs = $conn->execute($q);

假设$q应该是您正在执行的sql查询

那么,在你的$rs以上,我们只是缺少了一些$q = SELECT * FROM foo;吗?