什么是数据库事务
数据库事务是指作为单个逻辑工作单元执行的一组数据库操作,这些操作要么全部成功完成,要么全部失败回滚。事务以保证数据的一致性和完整性为目标。
事务具有以下几个特性,通常缩写为ACID:
- 原子性(Atomicity):事务中的所有操作要么全部执行成功,要么全部回滚,不会出现部分操作成功或部分操作失败的情况。
- 一致性(Consistency):事务在执行前后数据库的数据状态必须保持一致。如果一个事务违反了数据库的完整性约束,那么事务将回滚到执行之前的状态,保证数据的正确性。
- 隔离性(Isolation):事务的执行是相互隔离的,一个事务的操作在提交之前对其他事务是不可见的。隔离级别可以控制事务之间的可见性和并发性。
- 持久性(Durability):一旦事务提交,其所做的修改会永久保存在数据库中,即使在系统故障或重启后,也能保证数据的持久性。