sql语句成功,改变行数却为0???
程序员文章站
2024-01-30 13:24:52
...
$query="update table_user set balance=balance+'$money' where name='$name'";
$result=$mysqli->query($query);
echo $result;
echo "
";
echo $mysqli->affected_rows;
数据库已经连接成功,上面的代码执行后echo $result
输出为1,表示操作成功,,但是echo $mysqli->affected_rows
输出为0,表示失败,,怎么会这样,问题在哪????
提示:如果先在mysql的客户端执行一下一个记录的更新语句,则在php中就可以继续更新,且成功,没有在mysql客户端执行的记录则不成功。
回复内容:
$query="update table_user set balance=balance+'$money' where name='$name'";
$result=$mysqli->query($query);
echo $result;
echo "
";
echo $mysqli->affected_rows;
数据库已经连接成功,上面的代码执行后echo $result
输出为1,表示操作成功,,但是echo $mysqli->affected_rows
输出为0,表示失败,,怎么会这样,问题在哪????
提示:如果先在mysql的客户端执行一下一个记录的更新语句,则在php中就可以继续更新,且成功,没有在mysql客户端执行的记录则不成功。
操作成功不代表你 更改了 任何东西. 你的sql里 where条件可以匹配到么. 还有确保你的$money 不为0
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
这两条都query OK, 但是0 rows affected
上一篇: 关于时间戳与MYSQL有关问题
下一篇: VoltDB内存数据库的十大FAQ