事务(transaction)

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

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

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

1.原子性(Atomicity):

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

2.一致性(Consistency):

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

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

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

相关推荐
Always_away15 分钟前
数据库系统概论|第三章:关系数据库标准语言SQL—课程笔记2
数据库·笔记·sql
ALex_zry1 小时前
深入解析 MySQL 中的日期时间函数:DATE_FORMAT 与时间查询优化
android·数据库·mysql
二年级程序员1 小时前
MySQL 约束(入门版)
数据库·mysql
04Koi.1 小时前
Redis进阶--主从复制
数据库·redis·缓存
S01d13r2 小时前
Redis 面经
数据库·redis·缓存
江沉晚呤时2 小时前
C# 状态模式深度解析:构建灵活的状态驱动系统
开发语言·javascript·数据库·ui·ajax·c#·ecmascript
forestsea2 小时前
PostgreSQL高级编程:存储过程与函数
数据库·postgresql
难以触及的高度2 小时前
MySQL 存储过程的实用技巧与最佳实践
数据库·mysql
Lorin 洛林3 小时前
修复SSL证书链不完整问题certificate verify failed unable to get local issuer certificate
数据库·网络协议·ssl
梦幻加菲猫3 小时前
SQL在线格式化 - 加菲工具
java·数据库·sql