本篇文章给大家带来的内容是关于MySQL事务管理的介绍(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
事务处理用来维护数据库等完整性,保证mysql操作要么成功,要么失败(myisam不支持事务)
1、关键词
事务(transaction)指一组sql语句;
回退(rollback)指撤销指定SQL语句的过程;
提交(commit)指将未存储的SQL语句结果写入数据库表;
保留点(savepoint)指事务处理中设置的临时占位符(place-holder),你可以对它发布回退(与回退整个事务处理不同)。
2、使用rollback
select * from orderitems;START TRANSACTION;DELETE FROM orderitems;select * from orderitems;ROLLBACK;select * from orderitems;
3、使用commit
START TRANSACTION;DELETE FROM orderitems where order_num = 20010;DELETE FROM orders WHERE order_num = 20010;COMMIT
假设第二条删除失败,回滚,撤销事务处理块内的语句
4、使用保留点
复杂的事务处理可能需要部分提交或回退。
为了支持回退部分事务处理,必须能在事务处理块中合适的位置放 置占位符。这样,如果需要回退,可以回退到某个占位符。
这些占位符称为保留点。为了创建占位符,可如下使用SAVEPOINT
创建保留点
乾坤圈新媒体矩阵管家
新媒体账号、门店矩阵智能管理系统
17 查看详情
SAVEPOINT delete1
回退到保留点
ROLLBACK TO delete1
tips
保留点越多越好,方便灵活使用,but没必要到就算来哈!凡事适可而止
释放保留点
保留点在事务处理完成(执行一条ROLLBACK或 COMMIT)后自动释放
release savepoint delete1明确释放保留点
5、更改默认到提交行为
mysql是自动提交所有更改。
不自动提交更改
set autocommit = 0;
以上就是MySQL事务管理的介绍(附示例)的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/375829.html
微信扫一扫
支付宝扫一扫

