所以,这个查询:
mysql_query("UPDATE item SET name = 'foo' WHERE name = 'bar'");
返回1,但表中不存在值'bar'。正如预期的那样,数据库本身没有任何变化,但在这种情况下mysql_query()不应该返回0吗?
答案 0 :(得分:6)
返回true
,因为查询已成功执行。如果您想知道更新了多少行,则必须使用mysql_affected_rows
。
答案 1 :(得分:1)
如果您只是回显mysql_query的值,那么它将是真或假。您需要使用mysql_affected_rows()
来获取实际受影响的行。
答案 2 :(得分:1)
为什么,不。查询本身是成功的,即它是一个有效的查询并成功执行。它只是不适用于任何一行。