欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql中什么是事务?

程序员文章站 2022-03-29 17:24:34
事务...

事务

  1. 原子性

一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。

  • 比如转账:
    A有100,B有30,A要转30给B,要么转账成功B有60,A70,要么转账失败A,B账户不变动.并不会A账户没了30,B账户还没收到,30不会飞走.
  1. 一致性
    保证事务前后的数据完整性保持一致

A和B加起来共有130,转账完成后他们加起来的金额也是130,并不会多或少

  1. 隔离性
    一个事务的执行不能被其他事务干扰.
  2. 持久性
    事务一旦提交则不可逆,它对数据库中数据的改变就是永久性的.

隔离所产生的一些问题:

  • 脏读:

指一个事务读取了另一个事务未提交的数据
mysql中什么是事务?

  • 不可重复读:

指在一个事务内读取表中的某一行数据,多次读取结果不同

页面统计查询:

A 100
B 200
C 500

点击生成报表的时候,B有人转账进来300(事务已经提交)

A 100
B 500
C 500
  • 虚读(幻读):

一个事务读取到了别的事务插入的数据,导致前后读取不一致
(一般是行影响,多了一行)

A 100
B 500
C 500
A 100
B 500
C 500
D 500

本文地址:https://blog.csdn.net/qq_45404563/article/details/112580303

相关标签: Mysql