事务(transaction)

事务,什么是事务,事务就是由单独单元的一个或多个sql语句组成,在这个单元中,每个sql语句都是相互依赖 的。而整个单独单元是作为一个不可分割的整体存在,类似于物理当中的原子(一种不可分割的最小单位)。

通俗来说,事务就是一个整体,里面的内容要么都执行成功,要么都执行失败,不可能存在部分执行成功,部分执行不成功的情况。

事务的四个特性(ACID)面试常考项:

1.原子性(Atomicity):

指事务是一个不可分割的最小工作单位,事务中的操作只有发生和都不发生两种情况。

2.一致性(Consistency):

一致性(Consistency):事务必须使数据库从一个一致状态变换到另外一个一致状态,举一个例子,李四给张三转账100元,其事务就是让李四账户上减去100元,张三账户上加上100元;一致性是指其他事务看到的情况是要么李四还没有给张三转账的状态,要么张三已经成功接收到李四的100元转账。而对于李四少了100元,张三还没加上100元这个中间状态是不可见的。

3.隔离性(Isolation):一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

4.持久性(Durability):一个事务一旦提交成功,它对数据库中数据的改变将是永久性的,接下来的其他操作或故障不应对其有任何影响。

相关推荐
21号 15 分钟前
4.客户端(Redis)
开发语言·数据库·github
云和数据.ChenGuang11 分钟前
MongoDB 提供的 `GridFSTemplate` 操作 GridFS 大文件系统的常用查询方式
数据库·mongodb
一只自律的鸡1 小时前
【MySQL】第四章 排序和分页
数据库·mysql
qq_203769492 小时前
debian13安装PostgreSQL并远程连接
数据库·postgresql
苏小瀚2 小时前
[MySQL] 联合查询
数据库·mysql
雪碧聊技术2 小时前
Linux命令过关挑战
linux·运维·数据库
Java水解2 小时前
KingbaseES SQL性能调优方案分享
后端·sql
oak隔壁找我2 小时前
SpringBoot + MyBatis 配置详解
java·数据库·后端
oak隔壁找我2 小时前
SpringBoot + Redis 配置详解
java·数据库·后端
帧栈2 小时前
开发避坑指南(64):修复IllegalArgumentException:参数值类型与期望类型不匹配
java·数据库