数据库事务是访问并可能操作各种数据项的一个数据库操作序列,这些操作要么 全部执行,要么 全部不执行,是一个 不可分割 的工作单位,事务由事务开始与事务结束之间执行的全部数据库操作组成
由此可见,事务是数据库操作的基本单元,封装了互相依赖的一系列操作,并最终达到操作数据库的目的,接下来就好好聊聊它,开搞!
什么是数据库事务
在数据库系统中,事务是工作的 离散单位,它可以是修改一个用户的账户余额,也可以是库存项的写操作。在单用户、单数据库环境下执行事务比较简单,但在分布式环境下,维护多个数据库的完整性就比较复杂
大多数联机事务处理系统是在大型计算机上实现的,这是由于它的操作复杂,需要快速的输入/输出和完善的管理。如果一个事务在多个场地进行修改,那就需要管理机制来防止数据重写并提供同步,另外还需要具有返回失效事务的能力,提供安全保障和提供数据恢复能力
数据库事务的特性
有四个特性
- **原子性(Atomicity)**:事务中的全部操作在数据库中是 不可分割的,要么全部完成,要么全部不执行
- **一致性(Consistency)**:几个并行执行的事务,其执行结果必须与按某一顺序 串行执行的结果相一致
- **隔离性(Isolation)**:事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的
- **持久性(Durability)**:对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障
结语
数据库事务也是一个基石概念,它构筑起了数据库的底层架构,使我们的操作能符合预期进行,因此也是必须掌握的一个概念,好啦,就到这啦,over!