使用PHP,我试图删除一条记录,但我想检查它是否成功.成功归来的是什么DELETE FROM foo where bar = 'stuff'
?
或者,您是否知道检查DELETE是否成功的任何其他方法?或者我最好只是在删除它之前确保该行存在?我想尽可能避免另一个查询.
Pao*_*ino 59
假设您使用的是mysql_query:
对于其他类型的SQL语句,INSERT,UPDATE,DELETE,DROP等,mysql_query()在成功时返回TRUE,在出错时返回FALSE.
如果您使用的是PDO :: exec,那么手册会说:
PDO :: exec()返回由您发出的SQL语句修改或删除的行数.如果没有行受到影响,PDO :: exec()将返回0.
不想回答snipe,但由于这被选为答案,我应该注意,TRUE
即使查询实际上没有删除任何东西,mysql_query也会返回.您应该用它mysql_affected_rows
来检查.
big*_*mus 37
此外,如果您关心受影响的行数:
[使用] mysql_affected_rows()查找DELETE,INSERT,REPLACE或UPDATE语句影响的行数.
小智 15
您可以尝试使用您的PHP代码,在查询运行后放置:
if (mysql_affected_rows() > 0) {
echo "You have successfully updated your data.<br><br>";
}
else {
echo "The data you submitted matched the current data so nothing was changed.<br><br>";
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
70998 次 |
最近记录: |