连接到MySQL数据库并计算行数

时间:2010-06-17 13:12:55

标签: mysql database count rows

我需要连接到MySQL数据库,然后显示行数。这是我到目前为止所得到的;

    <?php

include "connect.php";


db_connect(); 

$result = mysql_query("SELECT * FROM hacker"); 
$num_rows = mysql_num_rows($result); 


echo $num_rows; 

?>

当我使用该代码时,我最终会遇到此错误;

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\username\Desktop\xammp\htdocs\news2\results.php on line 10

提前致谢:D

3 个答案:

答案 0 :(得分:5)

你可能会更好地要求数据库聚合行数而不是将它们全部转移到php并在那里进行计数。

SELECT COUNT(*) FROM hacker

答案 1 :(得分:2)

养成以这种方式运行所有查询的习惯:

$sql   = "SELECT * FROM hacker";
$res   = mysql_query($query) or trigger_error(mysql_error().$sql);

并且您将始终拥有全面的错误信息 并采取适当的更正

同样,如上所述,唯一可靠的计算行的方法是SELECT count(*)查询

$sql   = "SELECT count(*) FROM hacker";
$res   = mysql_query($query) or trigger_error(mysql_error().$sql);
$row   = mysql_fetch_row($res);
$count = $row[0];

答案 2 :(得分:1)

按以下方式更改您的代码:

$result = mysql_query("SELECT * FROM hacker");
echo mysql_error();

您有SQL错误或未连接到数据库