
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在前几期的文章中给大家简单介绍了数据库技术学习需要掌握的一些基础知识等内容,而本文我们就继续来学习一下,数据库事务概念与特点分析。
事务是指满足ACID特性的一组操作,可以通过Commit提交一个事务,也可以使用Rollback进行回滚。
ACID
事务基本的莫过于ACID四个特性了,这四个特性分别是:
Atomicity:原子性
Consistency:一致性
Isolation:隔离性
Durability:持久性
原子性
事务被视为不可分割的小单元,事务的所有操作要么全部成功,要么全部失败回滚。
一致性
数据库在事务执行前后都保持一致性状态,在一致性状态下,所有事务对一个数据的读取结果都是相同的。
隔离性
一个事务所做的修改在终提交以前,对其他事务是不可见的。
持久性
一旦事务提交,则其所做的修改将会永远保存到数据库中。即使系统发生崩溃,事务执行的结果也不能丢。
ACID之间的关系
事务的ACID特性概念很简单,但不好理解,主要是因为这几个特性不是一种平级关系:
只有满足一致性,事务的结果才是正确的。
在无并发的情况下,事务串行执行,隔离性一定能够满足。此时只要能满足原子性,就一定能满足一致性。在并发的情况下,多个事务并行执行,事务不仅要满足原子性,还需要满足隔离性,才能满足一致性。
事务满足持久化是为了能应对数据库崩溃的情况。
隔离级别
未提交读(READUNCOMMITTED)
事务中的修改,即使没有提交,对其他事务也是可见的。
提交读(READCOMMITTED)
一个事务只能读取已经提交的事务所做的修改。换句话说,一个事务所做的修改在提交之前对其他事务是不可见的。
可重复读(REPEATABLEREAD)
保证在同一个事务中多次读取同样数据的结果是一样的。
可串行化(SERIALIZABLE)
强制事务串行执行。
需要加锁实现,而其它隔离级别通常不需要。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。