什么叫做事务,事务的四个必要属性是哪些?事务的隔离级别?
事务介绍:所谓事务是用户定义的一个数据操作序列,这些操作要么全做要么都都不做,是一个不可分割的工作单位。
事务属性:原子性,一致性,隔离性,持久性
原子性:(Atomicity)事务是数据库的逻辑工作单元,事务中包括的诸操作要么都做,要么都不做。
一致性:(Consistency)事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。
隔离性:(Isolation)一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性:(Durability)持久性也称永久性(permancence),指一个事务一当提交,它对数据库中数据的改变就应该是永久性的。接下来的操作或故障不应该对其执行结果有任何影响。
未授权读取
也称为读未提交(Read Uncommitted):允许脏读取,但不允许更新丢失。如果一个事务已经开始写数据,则另外一个数据则不允许同时进行写操作,但允许其他事务读此行数据。该隔离级别可以通过“排他写锁”实现。
授权读取
,也称为读提交(Read Committed):允许不可重复读取,但不允许脏读取。这可以通过“瞬间共享读锁”和“排他写锁”实现。读取数据的事务允许其他事务继续访问该行数据,但是未提交的写事务将会禁止其他事务访问该行。
可重复读取
可重复读取(Repeatable Read):禁止不可重复读取和脏读取,但是有时可能出现幻影数据。这可以通过“共享读锁”和“排他写锁”实现。读取数据的事务将会禁止写事务(但允许读事务),写事务则禁止任何其他事务。
序列化
序列化(Serializable):提供严格的事务隔离。它要求事务序列化执行,事务只能一个接着一个地执行,但不能并发执行。如果仅仅通过“行级锁”是无法实现事务序列化的,必须通过其他机制保证新插入的数据不会被刚执行查询操作的事务访问到。
隔离级别越高,越能保证数据的完整性和一致性,但是对并发性能的影响也越大。对于多数应用程序,可以优先考虑把数据库系统的隔离级别设为Read Committed,它能够避免脏读取,而且具有较好的并发性能。尽管它会导致不可重复读、虚读和第二类丢失更新这些并发问题,在可能出现这类问题的个别场合,可以由应用程序采用悲观锁或乐观锁来控制。
分享到:
相关推荐
本章主要讨论的是事务管理与恢复的概念,对于理解数据库的工作原理至关重要。 首先,事务是数据库操作的基本单位,它封装了一系列相关的数据库操作,确保这些操作要么全部执行,要么全部不执行,这一特性称为事务的...
### 数据库系统原理复习知识点详解 #### 一、填空题知识点详解 1. **三类经典的数据模型**: - **层次模型**:最早的数据模型之一,它以树形结构来表示实体及其之间的关系。 - **网状模型**:允许一个以上的结点...
知识点梳理:全面覆盖数据库原理的核心概念,包括数据模型、SQL语言、数据库设计、事务处理、并发控制、数据库安全与管理等,每个章节都有清晰的知识框架和要点总结。 经典例题解析:精选历年考试真题及高质量...
本复习文档主要涵盖了分布式数据库的分类、架构、数据分片与分布策略、数据库管理系统的核心功能、以及事务管理和并发控制等多个核心知识点。 1. 分类: - 按数据模型分类:分布式数据库系统可以分为同构型DDBS和...
3. 操作系统:学习进程管理、内存管理、文件系统、设备管理和调度策略等内容,掌握操作系统的核心概念和设计原则。 4. 网络协议:TCP/IP协议栈是网络通信的基础,熟悉OSI模型,理解TCP、UDP、HTTP等协议的工作原理...
在复习这个主题时,我们通常会接触到一系列重要的概念和术语,包括关系模型、SQL语言、事务处理、并发控制和数据库恢复等。 1. **关系模型**:关系模型是数据库系统中最常见的一种数据表示方式,由E.F.科德提出。它...
"行政法学"是自考本科中的一门核心课程,主要研究国家行政机关及其工作人员执行公共事务时所遵循的法律规则和原则。这门学科涵盖了行政权力的来源、行使、监督和法律责任等方面,是理解现代法治社会中政府行为的重要...
"南京工程学院-数据库原理-期末复习题-含答案.pdf" 这份资源是南京工程学院的数据库原理期末复习题,包含选择题、填空题、解释题、简答题和应用题。下面是从这份资源中生成的相关知识点: 一、数据库系统的基本...
【复习提纲-20142】主要涵盖了数据库和SQL的基础知识,以及更高级的主题,如对象-关系SQL、数据库应用开发、设计和事务管理。以下是这些知识点的详细解释: **第二章:关系模型的基本概念与基本理论** - **数据库**...
通过以上总结,我们可以看出这份“复习资料-数据库.pdf”文档涵盖了数据库领域的基础知识、核心概念和技术应用等多个方面,对于准备四川大学研究生考试的学生来说是非常有价值的复习资源。希望这些知识点能够帮助...
### 数据库系统原理知识点梳理 ...以上内容是《数据库系统原理》复习提纲中所涵盖的主要知识点,涵盖了从基础概念到高级应用的各个方面。希望这些内容能帮助读者更好地理解和掌握数据库系统的核心知识。
复习题中可能涵盖以上各个领域的具体概念、API使用、配置示例以及最佳实践。考生需要对Spring的核心概念有深入理解,并能够熟练应用到实际项目中。通过解答这些问题,考生不仅能检验自己的Spring知识掌握程度,还能...
复习重点包括数据库的基本概念、关系模型、关系代数、视图、事务处理、完整性约束、查询优化、并发控制和数据库设计等关键知识点。 首先,理解数据库系统的基本概念是基础。数据库是按照数据结构来组织、存储和管理...
【数据库复习重点概念】 在IT领域,数据库是管理和存储数据的核心工具。数据库经历了从人工管理阶段到文件系统阶段,最终发展到数据库系统阶段的过程。在这个过程中,数据的组织和管理方式逐渐规范,效率和安全性...
### 数据库复习试题知识点解析 #### 一、填空题知识点解析 1. **数据库与数据库管理系统** - **数据库**:按照统一的结构形式组织并存放于统一的存储介质内的数据集合,这些数据可以被多个应用共享。 - **数据库...
本文将围绕“数据库概论复习资料-杭电”这一主题,深入探讨数据库的基础概念、设计原理以及相关技术。 首先,我们要了解数据库的基本概念。数据库是一个有组织的数据集合,它提供了一种方式来存储、管理和获取数据...
复习资料中可能会涉及的数据库设计概念包括需求分析、概念设计、逻辑设计和物理设计。需求分析阶段要理解用户的需求并转化为数据需求;概念设计阶段通常使用实体-关系(E-R)模型来表示数据;逻辑设计将E-R模型转换...
期末复习的关键知识点涵盖了数据库的基础概念、SQL语言、关系数据库理论、数据库设计、安全性和恢复技术以及并发控制等多个方面。 首先,基础概念包括数据、数据库(DB)、DBMS(数据库管理系统)和DBS(数据库系统...