在关系数据库管理系统(DBMS,DataBase Management System)中,事务为描述数据库处理的一个完整的逻辑过程。
例如:在银行转账过程中,从原账户A扣除金额,以及向目标账户B添加金额,这两个数据库操作的总和,构成一个完整的逻辑过程,不可拆分。
这个过程被称为一个事务,具有ACID(Atomic,Consistent,Isolated,Durable)特性

原子性

原子性(Atomic)是指,事务是一个不可分割的整体,它对数据库的操作要么全做,要么全不做,即不允许事务部分地完成是指,若因故障而导致事务未能完成,则应通过恢复功能使数据厍回到该事务执行前的状态。原子性要求事务必须被完整执行。如果由于某个原因事务的执行没有完成,例如在事务执行期间发生系统故障,那么恢复时必须取消事务对数据库的任何影响。

一致性

一致性(Consistent)是指,事务对数据库的作用应使数据库从一个一致状态转换到另一个一致状态。一致状态是指数据库中的数据所必须满足的完整性约束。保持一致性通常被认为是数据库管理系统的责任,但是用户需要定义出该约束条件。以转账这个例子来说,用户需要告诉数据库管理系统该约束条件:转账前后账户的总和保持不变,而数据库管理系统则需要保证该约束条件总是成立。数据库状态是指在某个给定时间点上,数据库中存储的所有数据的集合。、

隔离性

隔离性(Isolated)指的是在并发环境中,当不同的事务同时操纵相同的数据时,每个事务都有各自的完整数据空间。由并发事务所做的修改必须与任何其他并发事务所做的修改隔离。事务查看数据更新时,数据所处的状态要么是另一事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看到中间状态的数据。
隔离性使得每个事务的更新在它被提交之前,对其他事务都是不可见的,因此实施隔离性是保证原子性的一种方式。

持久性

持久性(Durable)指的是,一旦事务执行成功,则该事务对数据库进行的所有更新都是持久的,即使数据库故障而受到破坏,DBMS也能恢复。