所在的位置: mysql >> mysql市场 >> 事务相关知识集锦

事务相关知识集锦

作者:李玉亮

引言

数据库事务与大多数后端软件开发人员的工作密不可分,本文从事务理论、事务技术、事务实践等方面对常用的相关事务知识进行整理总结,供大家参考。

??

事务理论介绍

事务定义

在数据库管理系统中,事务是单个逻辑或工作单元,有时由多个操作组成,在数据库中以一致模式完成的逻辑处理称为事务。一个例子是从一个银行账户转账到另一个账户:完整的交易需要减去从一个账户转账的金额,然后将相同的金额添加到另一个账户。

事务特性

原子性(atomicty)

事务中的全部操作在数据库中是不可分割的,要么全部完成,要么全部不执行。

一致性(consistency)

事务的执行不能破坏数据库数据的完整性和一致性。一致性指数据满足所有数据库的条件,比如字段约束、外键约束、触发器等,事务从一致性开始,以一致性结束。

隔离性(isolation)

事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务是透明的。

持久性(durability)

对于提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障。

注:DBMS一般采用日志来保证事务的原子性、一致性和持久性。

事务隔离级别

并发事务带来的问题

不可重复读的重点是数据修改场景,幻读的重点在于新增或者删除场景。

事务隔离级别

SQL92标准定义了4种隔离级别的事务

大多数数据库系统如oracle的默认隔离级别都是Read


转载请注明:http://www.aierlanlan.com/rzdk/6851.html