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
创建保留点
SAVEPOINT delete1
回退到保留点
ROLLBACK TO delete1
tips
保留点越多越好,方便灵活使用,but没必要到就算来哈!凡事适可而止
释放保留点
- 保留点在事务处理完成(执行一条ROLLBACK或 COMMIT)后自动释放
release savepoint delete1
明确释放保留点
5、更改默认到提交行为
mysql是自动提交所有更改。
不自动提交更改
set autocommit = 0;
MySQL-事务管理(基础)相关推荐
- mysql事务的管理方式_浅谈MySQL事务管理(基础)
本篇文章给大家带来的内容是浅谈MySQL事务管理(基础),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助.事务处理用来维护数据库等完整性,保证mysql操作要么成功,要么失败(myisa ...
- MySQL事务管理+安全管理+MySQL数据类型
[0]README 0.1)本文部分文字描述转自"MySQL 必知必会",旨在review"MySQL事务管理+安全管理+MySQL数据类型" 的基础知识: [ ...
- mysql事务管理及spring声明式事务中主动异常抛出使数据库回滚
mysql事务管理及spring声明式事务中主动异常抛出使数据库回滚 参考文章: (1)mysql事务管理及spring声明式事务中主动异常抛出使数据库回滚 (2)https://www.cnblog ...
- 使用mysql事务管理_MySQL事务管理的介绍(附示例)
原标题:MySQL事务管理的介绍(附示例) 事务处理用来维护数据库等完整性,保证mysql操作要么成功,要么失败(myisam不支持事务) 1.关键词 事务(transaction)指一组SQL语句; ...
- MySQL(08)——MySQL事务管理
事务: 一组sql语句(insert.update.delete),全部成功整体才算成功,一个失败整体也算失败. mysql 的事务默认自动打开,自动提交. 一条sql就是一个事务,所以不需要 事务开 ...
- mysql事务管理(重)
mysql事务的四大特性(ACID) 回滚事务(Rollback):只能回滚inset,update,delete操作,不能回滚select操作: 一个事务里面有多个操作 select * from ...
- spring配置mysql事务管理_Spring 数据库事务管理机制
要点1 Spring事务管理方法编程式事务(TransactionTemplate.PlatformTransactionManager) 声明式事务(配置式.注解式) 2 Spring 注解 @Tr ...
- 事务管理基础:两段锁协议、活锁、死锁相关知识整理
1.两段锁协议(Two-phase Locking Protocol) 两段锁协议是指对任何数据进行读写之前必须对数据进行加锁:在释放一个封锁之后,事务不再申请和获得任何其他封锁. 两段锁协议中两段 ...
- 事务管理基础:排它锁和共享锁相关知识笔记
1.排它锁.共享锁出现的意义 数据库的并发事务对数据库进行读写,可能会破坏事务的隔离性和数据一致性.为了保持事务的隔离性,系统必须对事务之间的相互作用加以控制.最典型的做法就是当一个事务访问某个数据对 ...
- 事务管理基础:数据库的并发控制相关知识笔记
1.并发操作的概念介绍 并发操作主要是指在多用户共享的系统当中,可能存在很多用户同时对同一个数据进行操作.并发操作会造成丢失更新.不可重复读.读脏数据.主要原因是事务的并发操作破坏了事务的隔离性. 2 ...
最新文章
- 开工快乐!AI内参邀你继续学习,并送上50元优惠券!
- C++ leetcode 21. 合并两个有序链表 将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
- java怎么把随机数放入数组_Java学习:集合的使用与数组的区别
- web前端知识点太多_web前端入门必学的16个知识点,都来看一下吧
- 纯ASP上传图像文件到数据库的最佳例子
- LiveVideoStack秋季招聘(编辑、会务运营、项目经理)
- Linux中防火墙命令笔记
- java编程彩球滑梯作弊_课内资源 - 基于C++的学生成绩管理系统
- 信息学奥赛一本通(1144:单词翻转)
- Fireworks层与蒙版的概念和用法
- 会员登录 php,php $_SESSION会员登录实例分享
- Smart View的客户化开发
- Excel案例-杜邦分析法
- IDEA GIT 单文件回退到指定版本
- origin作功率谱图
- MySQL 日期时间加减
- oracle的权限授予,oracle权限命令
- openwrt运行n2n服务器,在openwrt路由中加入n2n,并在ubuntu里加入n2n服务,实现开机联网互通互访...
- 【Windows安装RabbitMQ详细教程】
- 清华机试真题:成绩排序
热门文章
- mysql %用户域_MySQL运维---用户权限及管理
- WebDriverAgent安装到iphone真机
- java多态强制类型转换_java多态和强制类型转换
- 苹果呼叫转移设置不了_原来苹果手机是用这种方式清理垃圾,随意腾出20G,难怪能用5年...
- Android数据库高手秘籍
- JavaWeb:上传下载文件
- Android动态加载黑科技 动态创建Activity模式
- 怎样将项目上传到github上
- 三支一扶计算机公共基础知识,三支一扶公共基础知识教材(精华版).doc
- linux:进程占用的端口,在linux中查看进程占用的端口号