登录  /  注册
MySQL事务管理的介绍(附示例)
不言
发布: 2019-02-27 11:59:20
转载
1990人浏览过

本篇文章给大家带来的内容是关于MySQL事务管理的介绍(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

事务处理用来维护数据库等完整性,保证mysql操作要么成功,要么失败(myisam不支持事务)

1、关键词

  1. 事务(transaction)指一组SQL语句;

  2. 回退(rollback)指撤销指定SQL语句的过程;

  3. 提交(commit)指将未存储的SQL语句结果写入数据库表;

  4. 保留点(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

创建保留点

SAVEPOINT delete1
登录后复制

回退到保留点

ROLLBACK TO delete1
登录后复制

tips

保留点越多越好,方便灵活使用,but没必要到就算来哈!凡事适可而止
释放保留点

  1. 保留点在事务处理完成(执行一条ROLLBACK或 COMMIT)后自动释放

  2. release savepoint delete1明确释放保留点

5、更改默认到提交行为

mysql是自动提交所有更改。
不自动提交更改

set autocommit = 0;
登录后复制

以上就是MySQL事务管理的介绍(附示例)的详细内容,更多请关注php中文网其它相关文章!

相关标签:
来源:segmentfault网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 技术文章
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2023 //m.sbmmt.com/ All Rights Reserved | 苏州跃动光标网络科技有限公司 | 苏ICP备2020058653号-1

 | 本站CDN由 数掘科技 提供

登录PHP中文网,和优秀的人一起学习!
全站2000+教程免费学