什么是数据库事务?

2023年 10月 24日 60.8k 0

数据库事务( transaction) 是指作为一个逻辑工作单元执行的一系列数据库操作,这些操作要么全部成功,要么全部失败,是一个不可分割的工作单元。

事务是在事务开始和事务结束之间执行的一系列数据库操作。

事务的目的是确保数据库操作的一致性和完整性,以及提供对并发访问的隔离性和恢复能力。

图片[1]-什么是数据库事务?-不念博客

事务具有四个核心特性,也被称为ACID特性:

原子性(Atomicity):事务中的操作要么全部成功,要么全部失败,不存在部分成功的情况。如果事务失败,系统会回滚到事务开始前的状态,保证数据的一致性。

一致性(Consistency):事务执行前后,数据库必须保持一致性状态。这意味着事务必须使数据库从一个一致性状态变换到另一个一致性状态。如果事务成功提交,系统中的数据将处于有效状态;如果事务失败,系统中的数据将回滚到事务开始前的状态。

例如,在转账操作中,转账前后的账户余额总和应该保持不变。

隔离性(Isolation):并发执行的多个事务之间应该相互隔离,互不干扰。

每个事务都应该感知不到其他事务的存在,以避免数据的不一致和并发访问的问题。隔离级别可以控制事务之间的隔离程度。

持久性(Durability):一旦事务提交成功,对数据库的修改应该永久保存,即使系统发生故障或重启。

系统应该能够恢复到事务提交后的状态,保证数据的持久性。

这四个特性被称为ACID特性,是保证数据库事务正确执行的基本要素。

通过这些特性,可以确保数据库操作的一致性、完整性和可靠性。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论