如何回滚上一次执行的mysql query.Suppose有2-3个查询依赖提交按钮,第一个查询运行成功,第二个查询失败,然后如何回滚第一个查询。
发布于 2014-02-28 13:09:53
根据您使用的是mysql还是mysqli扩展模块,使用mysql_rollback或mysqli_rollback
这个链接应该会给你一个更清晰的概念
http://www.w3schools.com/php/func_mysqli_rollback.asp
发布于 2014-02-28 13:19:06
您需要使用事务。
序列将是:
1)开始事务2)发出一个或多个SQL命令3)查看是否有错误4)如果有错误,则发出ROLLBACK
注意:默认情况下,MySQL在启用自动提交模式的情况下运行。这意味着只要您执行一条更新(修改)表的语句,MySQL就会将更新存储在磁盘上,使其成为永久性的。要隐式禁用单个语句系列的自动提交模式,请使用START TRANSACTION语句,该语句将禁用自动提交,直到使用COMMIT或ROLLBACK结束事务为止。
Refer this
发布于 2014-02-28 13:10:05
使用事务:
START TRANSACTION;
SELECT * FROM tbl_foo;
SELECT * FROM llsldllfdlfdld; -- typo, fails!
ROLLBACK; -- reverses first transaction如果一切正常,那么发送COMMIT;来完成更改,而不是发送ROLLBACK。
https://stackoverflow.com/questions/22086684
复制相似问题