Mysqli SELECT COUNT(*)FROM表返回false

时间:2016-11-28 21:30:02

标签: php mysqli

我的msqli代码有一个奇怪的问题。我复制了我的其他代码的一部分,我得到了这个:

$query=mysqli_query($mysql,"SELECT COUNT (*) AS number FROM table");
$query=mysqli_fetch_assoc($query);
$query=$query['number'];

我认为我错了一些东西,但我发现这个代码没有问题,所以我复制粘贴了整个其他工作代码并且它不起作用,而它仍然在另一个文件中完美地工作。查询返回一个布尔值。任何想法如何使它工作?

1 个答案:

答案 0 :(得分:0)

发布为社区维基。

从MySQL手册上的功能:

  

“默认情况下,函数名称和后面的括号之间不能有空格。这有助于MySQL解析器区分函数调用和对函数名称与函数同名的表或列的引用但是,允许使用函数参数的空格。“

http://dev.mysql.com/doc/refman/5.7/en/functions.html

答:从COUNT (*) =>中删除空格COUNT(*)

  • COUNT()是一个聚合“函数”。

只是出于争论的缘故; table是一个MySQL保留字,应该是它的实际名称。

如果您仍希望使用该名称(如果是这种情况),请将其打包为刻度:

SELECT COUNT(*) AS number FROM `table`

检查查询错误:

另外,使用相同的$query变量是不好的做法。

还要确保使用相同的MySQL API进行连接,mysqli_而不是另一个。