首页  >  文章  >  后端开发  >  sql语句成功,改变行数却为0???

sql语句成功,改变行数却为0???

WBOY
WBOY原创
2016-06-06 20:42:261378浏览

<code>$query="update table_user set balance=balance+'$money' where name='$name'";
$result=$mysqli->query($query);
echo $result;
echo "<br>";
echo $mysqli->affected_rows;
</code>

数据库已经连接成功,上面的代码执行后echo $result输出为1,表示操作成功,,但是echo $mysqli->affected_rows输出为0,表示失败,,怎么会这样,问题在哪????

提示:如果先在mysql的客户端执行一下一个记录的更新语句,则在php中就可以继续更新,且成功,没有在mysql客户端执行的记录则不成功。

回复内容:

<code>$query="update table_user set balance=balance+'$money' where name='$name'";
$result=$mysqli->query($query);
echo $result;
echo "<br>";
echo $mysqli->affected_rows;
</code>

数据库已经连接成功,上面的代码执行后echo $result输出为1,表示操作成功,,但是echo $mysqli->affected_rows输出为0,表示失败,,怎么会这样,问题在哪????

提示:如果先在mysql的客户端执行一下一个记录的更新语句,则在php中就可以继续更新,且成功,没有在mysql客户端执行的记录则不成功。

操作成功不代表你 更改了 任何东西. 你的sql里 where条件可以匹配到么. 还有确保你的$money 不为0

<code>mysql> update yanse set sexi_id=sexi_id+1 where id=1234342341;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 0  Changed: 0  Warnings: 0

mysql> update yanse set sexi_id=sexi_id where id=1;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0
</code>

这两条都query OK, 但是0 rows affected

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn