事务(transaction)

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

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

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

1.原子性(Atomicity):

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

2.一致性(Consistency):

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

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

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

相关推荐
廋到被风吹走1 小时前
【数据库】【Oracle】分析函数与窗口函数
数据库·oracle
陌北v11 小时前
为什么我从 MySQL 迁移到 PostgreSQL
数据库·mysql·postgresql
北辰水墨2 小时前
Protobuf:从入门到精通的学习笔记(含 3 个项目及避坑指南)
数据库·postgresql
JIngJaneIL2 小时前
基于java+ vue医院管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
予枫的编程笔记2 小时前
Redis 核心数据结构深度解密:从基础命令到源码架构
java·数据结构·数据库·redis·缓存·架构
信创天地2 小时前
信创国产化数据库的厂商有哪些?分别用在哪个领域?
数据库·python·网络安全·系统架构·系统安全·运维开发
JIngJaneIL2 小时前
基于java + vue校园跑腿便利平台系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
瀚高PG实验室3 小时前
highgo DB中数据库对象,模式,用户,权限之间的关系
数据库·瀚高数据库
越来越无动于衷3 小时前
odbc链接oracle数据源
数据库·oracle
李迟3 小时前
Golang实践录:使用sqlx操作sqlite3数据库
数据库·golang·sqlite