使用php/mysql,我如何获得查询影响的行数?
到目前为止我尝试了什么:
$result = mysql_query($q);
mysql_num_rows($result);
Run Code Online (Sandbox Code Playgroud)
但它说警告:mysql_num_rows():提供的参数不是有效的MySQL结果资源
oez*_*ezi 15
如果您正在使用PDO(我建议使用),直接查询exec()
将返回受影响的行数.对于准备好的语句,有一个叫做的方法rowCount()
.
如果你正在使用mysql函数,那就是mysql_affected_rows()
.
编辑:
好像你正在使用mysql函数.mysql_num_rows
,您正在使用的,返回结果集的长度(例如,对于SELECT-Statements).你需要使用的是mysql_affected_rows
(如前所述).
您也可能想要使用ROW_COUNT()函数,例如 -
UPDATE table1 SET column1 = 100 WHERE column2 = 10;
SELECT ROW_COUNT();
Run Code Online (Sandbox Code Playgroud)
从引用 - ROW_COUNT()返回最后一个语句更改,删除或插入的行数(如果它是UPDATE,DELETE或INSERT)...