(7)MySQL的事务

什么是事物:

作用:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样

 

例:现实生活中的一个转账场景

A 账户有5000 \ B账户有5000

A要向B转账500,如果没有任何意外此时B的账户中应有5500,但是凡事都会有意外,A在转账的时候突然断电或者出现了意外,此时A的账户已经减了500,但是B的账户没有增加,所以开启事物就是要保证这个转账的过程中的所有操作都要完成,如果有一个操作不完成就会视为操作无效,数据回滚,A的余额不会减,B的余额不会增加

PS:其实底层就是代码语句的执行完整性,因为A减少需要代码语句,B增加也需要代码语句,整个过程中只要代码语句执行不完整,事物就会视为操作无效,数据回滚到事物开启的时候最初的状态

 

事务实例:开启事务

'''这里新建一张表'''

create table use1(

  id int unsigned auto_increment primary key,

  name char(32) not null default'',

  money int not null default 0

  )charset=utf8;

表内添加数据:insert into user1(name,money) values('A',5000) ,('B',5000)

1、开启事务: start transaction; 

2、A开始转账:update user1 set money=4500 where id=1;

3、B开始收钱:update user1 set monet=5500 where id=2;

4、提交事务:  commit;

 

如果误操作或者操作不满意

就是用回滚:rollback

 

转载于:https://www.cnblogs.com/shizhengquan/p/10302590.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365824.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue路由跳转报错解决

vue路由跳转: setTimeout(function () { console.log(this); this.$router.push("/login"); },800) 语法没问题但是报错: MyFollow.vue?c93c:119 Uncaught TypeError: Cannot read property push of undefined 这时候说明this指向不一样了&am…

ceph存储原理_热门的分布式存储系统ceph入门介绍

一、什么是cephceph是当前最热门的分布式存储系统之一,是软件定义存储(SDS,SoftwareDefinedStorage)解决方案中的典范。其具备良好的可靠性、可扩展性,应用范围包括块存储(RBD,RadosBlockDevice)、文件存储(CephFS,CephFileSystem)和对象存储(RADOSGW,Re…

2017计算机应用考研大纲,2017考研计算机大纲

出国留学考研网为大家提供2017年考研计算机大纲:数据结构,更多考研资讯请关注我们网站的更新!2017年考研计算机大纲:数据结构一、数据结构考查目标1. 掌握数据结构的基本概念、基本原理和基本方法。2. 掌握数据的逻辑结构、存储结构及其基本操…

[SCOI2009] windy数

[SCOI2009] windy数 题目大意:求\([L,R]\)中相邻每一位之差至少大于\(2\)的数字个数,(只有一位也算) Solution 数位\(dp\)直接搞,对于前导零,其实不用卡下界,只要一个用一个状态来表示就好,还可以取\(0\) Code #include <iostream> #include <cstdio> #include <…

小程序点击调转带参数_带你走遍苏大的每个角落,校园导览小程序上线!

精彩推荐 1. 招新 | 携手趁韶华&#xff0c;约你同做“校媒人”&#xff01;2. 迎新现场 | 今天&#xff0c;“小20”是苏大的主角3. 苏州大学与亨通集团签订战略合作协议钟楼、红楼、精正楼……存菊堂、敬贤堂、子实堂……初至校园的“小20”们是否会有这样的烦恼在这楼宇亭台…

ArrayList与LinkedList

我必须承认这篇文章的标题有点吸引人。 我最近阅读了此博客文章 &#xff0c;这是有关此主题的讨论和辩论的一个很好的摘要。 但是这次&#xff0c;我想尝试一种不同的方法来比较这两个众所周知的数据结构&#xff1a;使用硬件性能计数器 。 我不会进行微基准测试&#xff0c…

koa中上传文件到阿里云oss实现点击在线预览和下载

比较好的在线预览的方法&#xff1a; 跳转一个新的页面&#xff0c;里面放一个iframe标签&#xff0c;或者object标签 <iframe src"xxx"></iframe> <object data"xxx"></object> 但是这两个标签也有限制&#xff0c;有些可以直接…

反序列化 还是记一下吧

JsonConvert.DeserializeObject<dynamic>(result) https://www.cnblogs.com/caofangsheng/p/5687994.html 转载于:https://www.cnblogs.com/sajiao/p/10303072.html

三菱st语言编程实例_LD、FBD、IL、ST、SFC、CFC六种编程语言的特点

CODESYS共支持六中不同的编程语言&#xff0c;很多学者在学习的过程中常会问一个问题&#xff0c;哪种编程语言最好&#xff1f;其实本人觉得没有哪种编程语言是绝对的好或不好&#xff0c;不同的工程应用具有不同的最佳编程方式&#xff0c;每种编程语言都具有其不同的特点&am…

假定某一个数据列表是一个班级的计算机课程,若需要利用形参直接访问实参,则应把形参变量说明为()参数。A.指针B.引用C.传值D.常值...

参考答案如下有机化合物系统命名法中&#xff0c;若需根据位次规则给官能团和取代基定位&#xff0c;常用 ( ) 编号要利用形引用RGB是与设备无关的色彩空间。参直参参变参数传值常值病毒灭活是指在理化因素作用下使病毒失去A1在后场向前场传球时&#xff0c;接访球触碰到了双脚…

爬虫

爬虫 1、设计 分布式爬虫系统允许位于多个不同主机上的爬虫程序并行爬取提交的爬虫作业&#xff0c;进而协调他们之间的爬取能力。爬取队列由redis管理&#xff0c;每个spider通过修改的调度程序从queue中拉取job。 页面被spider成功爬取后&#xff0c;就交给管线进行进一步处理…

python下划线怎么输入_python下划线怎么打出来

python中下划线使用键盘上的Shift减号键即可打出&#xff0c;减号键位于0和加号键之间。 在Python中下划线还具有 private 和 protected 类似的访问权限作用&#xff0c;下面我们具体分析。Python主要存在四种命名&#xff1a; &#xff08;1&#xff09;object #公用方法 &…

在测试中使用匹配器

我们被迫在测试代码中写太多断言行的日子已经一去不复返了。 镇上有一个新的警长&#xff1a;assertThat和他的代理人&#xff1a;匹配者。 好吧&#xff0c;这不是什么新东西&#xff0c;但是无论如何&#xff0c;我想向您介绍匹配器的使用方式&#xff0c;然后对匹配器概念进…

二、先在SD卡上启动U-boot,再烧写新的U-boot进Nandflash

1. 制作SD卡 先准备一张2G的SD卡&#xff08;不能用8G的&#xff0c;2G的卡和8G的卡协议不一样&#xff09;&#xff0c;和烧写SD卡的工具write_sd以及需要烧写到SD卡中的u-boot-movi.bin。将SD卡格式化后连接到Ubuntu虚拟机中&#xff0c;注意在SD卡需要插入到读卡器中&#x…

泉州经贸职业技术学院计算机系,部门简介-泉州经贸职业技术学院网络电教中心...

泉州经贸职业技术学院网络电教中心成立于2004年&#xff0c;是学院教学辅助部门&#xff0c;为学院教学、行政和后勤等工作提供计算机及网络技术支持。网络电教中心是学院信息化建设职能部门&#xff0c;主要负责各类计算机公共机房、多媒体教室的运行与维护&#xff0c;学院信…

编译型语言,解释型语言,脚本语言

编译型语言 编译型语言在执行之前就将代码编译成了机器语言&#xff0c;当执行的时候就直接运行机器语言&#xff0c;就可以了&#xff0c;如java&#xff0c;编译之后产生.class文件&#xff0c;然后JVM直接执行编译产生的文件就可以了&#xff0c;只要源代码没有发生改变&…

pandas 生成html表格_Pandas 读写html

Pandas 读写html,pandas提供read_html(),to_html()两个函数用于读写html格式的文件。这两个函数非常有用,把DataFrame等复杂的数据结构转换成HTML表格很简单,无需编写一长串HTML代码就能实现。pandas这方面的能力很强大,如果你从事web开发,这个功能将给你带来很多便捷。 读…

java comparator_Java基础之String漫谈(二)

Java-String1. 导读上期分享了本人关于String四个问题, 本期我们继续探讨String中的两个问题:.1 String既然已经实现了Comparable接口, 为什么还要提供内部类----CaseInsensitiveComparator;.2 使用 "" 拼接String究竟干了什么? 为什么在循环中不让使用""…

vue给input file绑定函数获取当前上传的对象

HTML<input type"file" change"tirggerFile($event)"> JS(vue-methods)tirggerFile : function (event) {var file event.target.files; // (利用console.log输出看结构就知道如何处理档案资料)// do something... } 如果直接在绑定的函数中传入thi…

掌握Java字节码

嘿! Happy Advent&#xff1a;D我是ZeroTurnaround的技术布道者Simon Maple&#xff08; sjmaple&#xff09; 。 您知道&#xff0c; JRebel伙计们&#xff01; 由于编写了类似于JRebel的产品&#xff0c;该产品与字节码进行交互的结果比您想像的更多&#xff0c;因此&#xf…