当前位置: 首页 > news >正文

中山建设银行招聘网站网站设计的评估

中山建设银行招聘网站,网站设计的评估,wordpress评论框样式,淄博网站建设及托管事务一、为什么要有事务二、什么是事务三、事务命令一、为什么要有事务 事务广泛运用于订单系统、银行系统等多种场景。 例如:A用户和B用户是银行的储户,现在 A 要给 B 转账 500元,那么需要做以下几件事: 检查 A 的账户余额>…

事务

  • 一、为什么要有事务
  • 二、什么是事务
  • 三、事务命令


一、为什么要有事务

  • 事务广泛运用于订单系统、银行系统等多种场景。

例如:A用户和B用户是银行的储户,现在 A 要给 B 转账 500元,那么需要做以下几件事:

  1. 检查 A 的账户余额>500元;
  2. A 账户中扣除 500 元;
  3. B 账户中增加 500 元。

正常流程走下来,A 账户扣了 500,B 账户加了 500,皆大欢喜。那如果 A 账户扣了钱之后,系统出故障了呢?A 白白损失了 500,而 B 也没有收到本该属于他的 500。
以上的案例中,隐藏着一个前提条件:A 扣钱和 B 加钱,要么同时成功,要么同时失败,事务的需求就在于此。

二、什么是事务

  • 所谓事务,是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。
  • 例如:银行转账工作,从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行。所以,应该把他们看成一个事务。
  • 事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。

三、事务命令

开启事务

begin;

开启事务后执行修改 UPDATE 或删除 DELETE 记录语句,变更会写到缓存中,而不会立刻生效。

回滚事务

rollback;
放弃修改。

提交事务
commit;
将修改的数据写入实际的表中。

例 1:开启事务,删除 students 表中 studentNo 为 001 的记录,同时删除 scores 表中 studentNo 为 001 的记录,回滚事务,两个表的删除同时放弃。

begin;
DELETE from students where studentNo = '001';
DELETE from scores where studentNo = '001';
rollback;

开启事务:
在这里插入图片描述

删除 students 表中 studentNo 为 001 的记录:
在这里插入图片描述

在这里插入图片描述

删除 scores 表中 studentNo 为 001 的记录:
在这里插入图片描述

在这里插入图片描述

回滚事务:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

▲ 回滚操作的案例:
例 2:开启事务,删除 students 表中 studentNo 为 001 的记录,同时删除 scores 表中 studentNo 为 001 的记录,提交事务,使两个表的删除同时生效。

begin;
DELETE from students where studentNo = '001';
DELETE from scores where studentNo = '001';
-- 一旦提交事务,两个删除操作同时生效
commit;

在这里插入图片描述

在这里插入图片描述

▲ 没有写 begin 代表没有事务,没有事务的表操作都是实时生效。
▲ 如果只写了 begin,没有 rollback,也没有 commit,结果是 rollback。

http://www.dtcms.com/a/465424.html

相关文章:

  • 深圳制作网站培训机构自己做的网站打开超慢
  • MySQL数据库优化实战提升查询性能的五大核心策略
  • libboost_system-mt-x64.so.1.76.0 和libboost_system-mt-d-x64.so.1.76.0 区别
  • 【11408学习记录】考研数学核心突破:线性代数特征值与特征向量详解+英语长难句精析
  • 深入剖析:基于epoll与主从Reactor模型的高性能服务器设计与实现
  • 非小细胞肺癌与肿瘤相关巨噬细胞:新的治疗策略
  • React Native:发现默认参数children【特殊的prop】
  • Flink进阶:从“会用”到“用明白”的踩坑与实战总结
  • 最专业的礼品网站实例网站优化费用怎么做会计分录
  • 苍穹外卖-工作台实现、Apache POI、导出Excel报表
  • 自定义类型:联合与枚举
  • Java9
  • 基于Spring Boot + Vue 3的乡村振兴综合服务平台
  • Java-145 深入浅出 MongoDB 基本操作详解:数据库查看、切换、创建集合与删除完整教程
  • disable-devtool 网络安全 禁止打开控制台
  • TCP协议的可靠性保障
  • ktv支付订房网站模板商业策划书范文6篇
  • 十一、OpenCV中图形的绘制
  • 用户中心网站设计北京社保网址
  • 安卓13_ROM修改定制化-----如何给安卓手机里安装或者内置数字证书文件 cer类型的证书文件如何转换为可内置文件
  • 仿mudou——Connection模块(连接管理)
  • vue3 + el-upload组件集成阿里云视频点播从本地上传至点播存储
  • 外贸网站是用什么软件做的法制教育网站
  • c/c++字符串比较
  • 国外建站公司上海企业自助建站系统
  • AI 生产工艺参数优化:中小型制造企业用 “智能调参“ 提升产品合格率与生产效率
  • 《Linux基础入门指令》:从零开始理解Linux系统
  • NVIDIA HGX H100 GPU 服务器现已在 DigitalOcean 欧洲数据中心上线
  • 工程师招聘网站住建局网站官网
  • SAP-ABAP:SAP中的用户确认对话框:深入理解与实践POPUP_TO_CONFIRM