首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在php中回滚上次执行的mysql查询的效果

如何在php中回滚上次执行的mysql查询的效果
EN

Stack Overflow用户
提问于 2014-02-28 13:05:00
回答 3查看 1K关注 0票数 0

如何回滚上一次执行的mysql query.Suppose有2-3个查询依赖提交按钮,第一个查询运行成功,第二个查询失败,然后如何回滚第一个查询。

EN

回答 3

Stack Overflow用户

发布于 2014-02-28 13:09:53

根据您使用的是mysql还是mysqli扩展模块,使用mysql_rollbackmysqli_rollback

这个链接应该会给你一个更清晰的概念

http://www.w3schools.com/php/func_mysqli_rollback.asp

票数 1
EN

Stack Overflow用户

发布于 2014-02-28 13:19:06

您需要使用事务。

序列将是:

1)开始事务2)发出一个或多个SQL命令3)查看是否有错误4)如果有错误,则发出ROLLBACK

注意:默认情况下,MySQL在启用自动提交模式的情况下运行。这意味着只要您执行一条更新(修改)表的语句,MySQL就会将更新存储在磁盘上,使其成为永久性的。要隐式禁用单个语句系列的自动提交模式,请使用START TRANSACTION语句,该语句将禁用自动提交,直到使用COMMIT或ROLLBACK结束事务为止。

Refer this

票数 1
EN

Stack Overflow用户

发布于 2014-02-28 13:10:05

使用事务:

代码语言:javascript
运行
复制
START TRANSACTION;
SELECT * FROM tbl_foo;
SELECT * FROM llsldllfdlfdld; -- typo, fails!
ROLLBACK; -- reverses first transaction

如果一切正常,那么发送COMMIT;来完成更改,而不是发送ROLLBACK

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22086684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档