关系型数据库:(eg:mysql)支持事务 ACID 特性

事务 ACID 特性

ACID 就是数据库里一个事务必须满足的 4 个规矩,保证数据不出错、不乱套。


1. A = Atomicity 原子性

要么全部成功,要么全部失败,不做一半

  • 就像转账:扣钱 + 加钱必须一起完成。
  • 扣了钱但没加到对方账户 = 失败,数据回滚,跟没操作一样。

一句话:不可分割,要么全做,要么全不做


2. C = Consistency 一致性

操作前后,数据始终合法、合理

  • 比如总钱数不变、余额不能为负、约束不能被破坏。
  • 不管怎么转,数据库永远是 "对的状态"。

一句话:数据永远合法,不会出现奇怪结果


3. I = Isolation 隔离性

多个事务同时跑,互不干扰

  • 你在转账,别人也在转账,互相看不见对方的中间状态。
  • 避免:你刚扣钱还没加钱,别人读到一个错误余额。

一句话:各玩各的,互不影响


4. D = Durability 持久性

一旦提交成功,就永久保存

  • 就算断电、崩溃、重启,成功提交的数据也不会丢。
  • 不会出现 "刚才明明成功了,刷新又没了"。

一句话:提交了就是永久的


极简总结(背这个就行)

  • A 原子性:要么全成,要么全不成
  • C 一致性:数据始终合法
  • I 隔离性:并发互不干扰
  • D 持久性:成功就永久保存
相关推荐
IvorySQL8 小时前
PostgreSQL 日报|修复截断 zstd 备份检测(10 月 9 日)
数据库·postgresql
刘胡子大叔8 小时前
SQL 脚本的导入顺序
数据库·sql
代码什么用9 小时前
Spring对IoC的实现
数据库·spring
hz5678911 小时前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
广州浮点FLOATLIC11 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
程序员Sunday11 小时前
MySQL 为什么使用 B+ 树索引?把范围查询、回表和覆盖索引连起来
数据库·mysql
半杯咖啡半行码11 小时前
Qt开发实战:数据库、MV 模式、QProcess与串口通信全攻略
数据库·qt
小米里的大麦12 小时前
16 MySQL 事务
数据库·mysql
西柚小萌新12 小时前
【LLM&&AI应用开发 八股文】--4.3.Agent智能体(下)
java·开发语言·数据库
邓工说电13 小时前
智慧断路器安全吗?数据加密、离线保护与合规认证全解读
大数据·数据库·人工智能·智能断路器·炜晔科技