php中的mysql_query
函数在成功时返回TRUE
,在失败时返回FALSE
。
我的问题是什么被认为是成功的?
换句话说,当SELECT
语句中没有任何内容时,或者如果有UPDATE
且没有任何内容与WHERE
子句匹配时返回的内容。它返回FALSE还是类似空资源?
我正在尝试区分db错误和空结果。
答案 0 :(得分:4)
成功意味着“没有错误”。获得零行不是错误。
修改:选中了manual page,说明非常明确(不确定你的位置):
对于SELECT,SHOW,DESCRIBE,EXPLAIN和其他语句返回 resultset,mysql_query()在成功时返回资源,或者 FALSE on 错误即可。
对于其他类型的SQL语句,INSERT,UPDATE,DELETE,DROP等, mysql_query()成功时返回TRUE,错误 FALSE 。
答案 1 :(得分:3)
TRUE
表示没有错误。
如果您想知道resultset
使用的行数:mysql_num_rows($result)
。
如果是更新,并且您想知道行是否已更改,请使用:mysql_affected_rows($result)
。