课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
数据库架构应用是后端软件开发程序员都需要重点掌握的一个编程开发技术,而今天我们就通过案例分析来了解一下,数据库架构事务的基础概念。
1.事务的一些概念
先我们要对事务常用概念有一个了解。
什么事务:
事务是数据库操作基本单元,逻辑上一组操作,要么都成功,如果有一个失败所有操作都失败
数据库事务四个特性(ACID):
原子性(业务单元的操作要么全部成功,要么全部失败)
一致性(事务完成时,所有数据保持一致)
隔离性(核心,为了压制丢失更新的产生,处理高并发的关键)
持久性(事务结束后,所有数据固化到一个地方,如:磁盘)
事务的操作方法:
声明式事务管理(注解方式)
编程式事务管理(xml配置)
这里仅讨论声明式事务管理
2、隔离级别
三类读的问题:
脏读:一个事务读取另一个事务没有提交的数据;
不可重复读:库存对于事务2而言是个可变化值;不可重复读的是数据库单一记录值。
幻读:幻读的数据不是数据库存储值,是统计值。
四类隔离级别:
用来解决上述三类读问题,隔离级别由高到低分为:未提交读、读写提交、可重复读、串行化。
未提交读:
允许一个事务读取另一个事务没有提交的数据;
优点:并发能力高;
缺点:可能发生脏读;
是低的隔离级别,一种危险的隔离级别。
读写提交:
一个事务只能读取另一个事务已经提交的数据;
优点:解决脏读问题;
缺点:可能造成不可重复读问题。
可重复度:
克服不可重复读问题;
优点:克服不可重复读问题;
缺点:
串行化:
要求所有SQL按顺序执行;
优点:保证数据一致性;
缺点:性能低。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。