>  기사  >  백엔드 개발  >  sql语句成功,改变行数却为0???

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

WBOY
WBOY원래의
2016-06-06 20:42:261381검색

<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으로 문의하세요.