Mysql-事务,原子性操作
事物分为 自动(默认的)和手动(需开启事务)两种 -- 事务 start transaction;
-- commite; 提交事务
-- rollback; 回滚事务
create table if not exists account(
id int primary key auto_increment,
name varchar(14) not null,
RMB int
); insert into account(name,RMB) values('Which',1000),('Tj',998);
rollback; 进行一步操作后,可以撤回这个操作
-- 开始事务 手动事物
start transaction;
-- 事物操作
update account set RMB =RMB-992 where name = 'Which';
-- \q 退出mysql(中断事务)
-- mysql -u name -p; 回到mysql
-- 继续事务操作
-- 回滚事务
rollback;
+----+-------+------+ -- insert
| id | name | RMB |
+----+-------+------+
| 1 | Which | 8 |
| 2 | Tj | 998 |
+----+-------+------+
-- update |
--+-------+------+
| id | name | RMB |
+----+-------+------+
| 1 | Which | 8 |
| 2 | Tj | 998 |
+----+-------+------+
-- rollback |
+----+-------+------+
| id | name | RMB |
+----+-------+------+
| 1 | Which | 8 |
| 2 | Tj | 998 |
+----+-------+------+
commite: 自动提交
-- 事物操作
update account set RMB =RMB-992 where name = 'Which';
-- \q 退出mysql(事务)
-- mysql -u name -p; 回到mysql
-- 实际上在这儿退出后,再回到account表,值并没有-992,但是再进行下一步操作后,992就转给Tj了。
-- 继续事务操作 update account set RMB =RMB+992 where name = 'Tj';
-- insert Which 1000,Tj 998
+----+-------+------+
| id | name | RMB |
+----+-------+------+
| 1 | Which | 1000 |
| 2 | Tj | 998 |
+----+-------+------+
-- update Which-992
+----+-------+------+
| id | name | RMB |
+----+-------+------+
| 1 | Which | 8 |
| 2 | Tj | 998 |
+----+-------+------+
-- update Tj+992
+----+-------+------+
| id | name | RMB |
+----+-------+------+
| 1 | Which | 8 |
| 2 | Tj | 1990 |
+----+-------+------+
原子性操作:Innodb引擎支持事务
要么全部成功,要么全部失败
Mysql-事务,原子性操作的更多相关文章
- Golang之Mysql事务
Mysql事务 )原子性 )一致性 )隔离性 )持久性 示例代码 package main import ( "fmt" _ "github.com/go-sql-dri ...
- Mysql学习---基础操作学习
1.1. 基本操作 数据库引擎 Inodb:支持事务[原子性操作,完成一些列操作后才算完成操作,否则rollback] MyISAM: 支持全文索引,强调了快速读取操作,主要用于高负载的select ...
- 第二百八十六节,MySQL数据库-MySQL事务操作(回滚)
MySQL数据库-MySQL事务操作(回滚) 事务用于将某些操作的多个SQL作为原子性操作,一旦有某一个出现错误,即可回滚到原来的状态,从而保证数据库数据完整性. 举例:有这样一张表 从表里可以看出张 ...
- 10.mysql事务管理及python操作
在用户操作MySQL过程中,对于一般简单的业务逻辑或中小型程序而言,无需考虑应用MySQL事务.但在比较复杂的情况下,往往用户在执行某些数据操作过程中,需要通过一组SQL语句执行多项并行业务逻辑或程序 ...
- 跟面试官侃半小时MySQL事务,说完原子性、一致性、持久性的实现
提到MySQL的事务,我相信对MySQL有了解的同学都能聊上几句,无论是面试求职,还是日常开发,MySQL的事务都跟我们息息相关. 而事务的ACID(即原子性Atomicity.一致性Consiste ...
- 学习ThinkPHP的第20天--MySQL事务操作、查询事件、一对一关联
之所以从20天才开始写随笔记是因为之前没搞自己的博客 从20天开始记录我在ThinkPHP中的点点滴滴 1.MySQL事务操作 /**事务操作*/ //startTrans启动事务.rollback回 ...
- MySQL 事务配置命令行操作和持久化
MySQL 事务配置命令行操作和持久化 参考 MySQL 官方参考手册 提供 5.5 5.6 5.7 8.0 版本的参考手册 https://dev.mysql.com/doc/refman/5.5/ ...
- MySQL 多表查询与事务的操作
表连接查询 什么是多表查询 # 数据准备 # 多表查询的作用 * 比如:我们想查询孙悟空的名字和他所在的部门的名字,则需要使用多表查询 # 如果一条 SQL 语句查询多张表,因为查询结果在多张不同的表 ...
- mysql数据库事务的操作与理解
--------------------事务----------------------------------------------查询mysql事务隔离级别1.查看当前会话隔离级别select ...
- MySql事务概述
事务是访问并更新数据库中各种数据项的一个程序执行单元.在事务中的操作,要么都执行修改,要么都不执行,这就是事务的目的,也是事务模型区别于文件系统的重要特征之一. 严格上来说,事务必须同时满足4个特性, ...
随机推荐
- show point on image
show point on image... for ( int i = 0; i < probp.size(); i++ ) { cv::Point pt = probp[i]; Distan ...
- hdu 5285 二分图黑白染色
题意:给出 n 个人,以及 m 对互不认识的关系,剩余的人都互相认识,要将所有人分成两组,组内不能有互不认识的人,要求每组至少有一人,并且第一组人数尽量多,问两组人数或不可能时单独输出 BC 48 场 ...
- python 获取中文文件名的输出
#coding:utf8 if __name__ == '__main__': srcfile = u"D:/测试路径/测试文件.txt" f = open(srcfile.enc ...
- SQL 存储过程入门(五)
好久没来博客园留下点东西,忙到找工作,最近把工作落实了. 最近公司的业务都是存储过程开发,发现去维护起来相当困难. 由于是维护项目,产品很久前都发布了,然而有一些修改,让我们去修改现在的逻辑,去看懂人 ...
- 【转】【iOS】动态更换App图标
原文网址:http://www.cocoachina.com/ios/20170619/19557.html 前言 动态更换App图标这件事,在用户里总是存在需求的:有些用户喜欢“美化”自己的手机.至 ...
- tyvj1035棋盘覆盖——二分图匹配
题目:http://www.joyoi.cn/problem/tyvj-1035 把可放的位置作为节点,相邻的连边. 可用天然有的编号作为节点的编号. 果然只用连单向边就行了.也只需记录另一部的对应点 ...
- keepalived的配置详解(非常详细)
keepalived的配置详解(非常详细) 2017-01-22 15:24 2997人阅读 评论(0) 收藏 举报 分类: 运维学习(25) 转载自:http://blog.csdn.net ...
- 使用Jquery实现Win8开始菜单效果的站点导航
前言: 本人是个Metro控,自我感觉到处都充斥着Metro的元素,个人认为这种风格强调表现以及内容,以简洁著称,不过也不是大部分都喜欢,也有一些人和你讨厌这种风格~不过本人非常喜欢这种风格,看我博客 ...
- 白话 Java Bean
所谓的Java Bean,就是一个java类,编译后成为了一个后缀名是 .class的文件.这就是Java Bean,不就是Java类吗? 1. 什么是 Java Bean? 很多培训机构在讲java ...
- spring SOA architecture
在谈这个之前,还得再说下SOA和平台.SOA做两件事情,一个是解耦并识别可重用的服务,一个是对服务进行灵活组装和编排满足业务需求,SOA核心是业务和技术的解耦,服务和能力的复用.而在IT领域的平台平台 ...