本文介绍: 编写sql语句时,有可能一条sql语句是解决不掉问题的,需要一批sql语句共同组合才能完成如:从银行卡A中提钱,向银行卡B转账,将银行卡A中的钱减100,再将银行卡B中的钱加100使用两条sql 语句 才能完成,单独一条语句是完不成操作的事务 是由 一条或者多条事务 构成的集合体,这个集合体 需要共同完成某种任务构成这个集合体的语句,要么全部失败,要么全部成功同样事务规定不同的客户端 看到的数据是不同的事务主要处理 操作量大、复杂度高的数据。
事务概念
mysql 本身内部采用 多线程的方式,来实现数据存储 相关的工作 就注定对数据 有并发访问的场景
为了解决这类问题,就提供了 事务 的概念
火车票售票系统中 存在一张tickets表,包含 id 、name 和 nums(票数)
mysql是一个网络服务,被一个人访问时,也有可能被其他人访问
当客户端A和客户端B 同时向火车票售票系统 购买票时
假设只有一张票,当客户端A想要买票时,经过if判断时,发现票数为1
但可能由于mysql内部的多线程 被调度了,负责给客户端A买票的线程被挂起了
当客户端B想要买票时,经过if判断,发现票数依旧为1
就会出现 仅有的一张票被卖了两次
什么是事务?
为什么要有事务?
事务的版本支持
事务的提交方式
事务常见操作方式
基本操作
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。