数据库之事务及事务的 ACID 性质
1.什么是事务
DBMS中的事务是一系列的数据库操作,是数据库应用程序的基本逻辑单元事务的基本概念
所谓事务是用户定义的一个数据库操作序列,这些操作要么都做,要么都不做,是一个不可分割的工作单位。
在关系数据库中,事务可以是一条SQL语句、一组SQL语句。
事务通常由高级数据操纵语言或编程语言(如SQL、COBOL、C、C++或Java)书写的用户程序的执行所引起,由事务开始与结束之间执行的全体操作组成。事务的开始与结束可以用形如 begin transaction 和 end transaction的语句(或函数调用)来显式定义,如果用户没有显式地定义事务,则由DBMS按缺省规定自动划分事务。
2.事务应具有下列四个性质(称为事务的ACID性质):
原子性(Atomicity)
一个事务对数据库的所有操作,是一个不可分割的工作单元。这些操作要么全部执行,要么什么也不做。它由DBMS的事务管理子系统来实现
一致性(Consistency)
一个事务独立执行的结果应保持数据库的一致性,即数据不会因为事务的执行而遭受破坏。确保单个事务的一致性是编写事务的应用程序员的职责。在系统运行时,由DBMS的完整性子系统执行测试任务。
隔离性(Isolation)
在多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样,也就是在多个并发事务执行时,保证执行结果是正确的。隔离性是由DBMS的并发控制子系统实现的。
持久性(Durability)
一个事务一旦完成全部操作后,它对数据库的所有更新应永久地反映在数据库中。即使以后系统发生故障,也应保留这个事务执行的痕迹。事务的持久性由DBMS的恢复管理子系统实现。
文章来源: jianguo.blog.csdn.net,作者:坚果前端の博客,版权归原作者所有,如需转载,请联系作者。
原文链接:jianguo.blog.csdn.net/article/details/103192352
- 点赞
- 收藏
- 关注作者
评论(0)