美文网首页
<面试题>什么是数据库事务,为什么要有数据库事务,事务的特性,事

<面试题>什么是数据库事务,为什么要有数据库事务,事务的特性,事

作者: 寧寧欧尼 | 来源:发表于2018-09-27 20:34 被阅读0次

什么是事务?

  • 事务就是把多件事情当做一件事情来处理。是数据库操作的最小单元,是作为单个逻辑工作单元执行的一系列操作;这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;事务是一组不可再分割的操作集合(工作逻辑单元)。

为什么要有事务?

  • 事务的提出就是为了解决并发情况下保持数据一致性的问题。
  • 事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。

数据库事务的四大特征

(1)原子性

原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。因此事务操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。

(2)一致性

一致性是指事务必须使数据库从一个一致性状态转换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。

(3)隔离性

隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。

(4)持久性

持久性是指一个事物一旦被提交了,那么对数据库中数据的改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。

事务的隔离级别

(1)Serializable(串行化):可避免脏读、不可重复读、幻读的发生
(2)Repeatable read(可重复读):可避免脏读、不可重复读的发生。
(3)Read committed(读已提交):可避免脏读的发生
(4):Read uncommitted(读未提交):最低级别,任何情况下都无法保证。
  • 以上四种隔离级别最高的是Serializable级别,最低的是Read uncommitted级别,当然级别越高,执行效率就越低。在MySQL数据库中默认的隔离级别为Repeatable read (可重复读)。

相关文章

  • 4、数据库的事务

    数据库的事务 什么是事务?: 多条sql语句,要么全部成功,要么全部失败。 事务的特性: 数据库事务特性:原子性...

  • 数据库事务,JDBC操作和数据类型

    1 数据库事务 1.1 事务特性 事务的特性: 原子性(atomicity):事务是数据库的逻辑工作单位,而且是必...

  • 4.MySQL的事务与锁(1)

    本章要点 1.数据库事务2.MVCC 1 数据库事务 1.1 事务特性 事务具有的特性:ACID(Atomicit...

  • java基础面试题总结——数据库

    1. 数据库事务4大特性(ACID), 数据库事务4大特性(ACID): 1.原子性(Atomicity): 事务...

  • MySQL数据库事务

    1. 什么是数据库事务 事务:把多条SQL语句作为一个整体进行操作,被称为数据库事务。 2. 事务的特性 原子性(...

  • 面试题

    1、什么是数据库事务,事务的特性有哪些,事务ACID特性的实现原理,事务的隔离级别,什么是脏读、不可重复读、幻读呢...

  • 升职加薪的必备良品之玩转Spring事务源码

    今日内容: 1.什么是数据库的事务? 2.为什么说Spring的事务就是数据库的事务? 3. 实现Spring事务...

  • <面试题>什么是数据库事务,为什么要有数据库事务,事务的特性,事

    什么是事务? 事务就是把多件事情当做一件事情来处理。是数据库操作的最小单元,是作为单个逻辑工作单元执行的一系列操作...

  • Spring的事务管理

    1.数据库事务基础知识 1.1.何为数据库事务 数据库事务的4个特性 原子性:组成一个事务的多个数据库操作是一个不...

  • SQLite数据库--事务

    事务是并发控制的基本单元 数据库事务具有ACID特性: A:Atomic原子性数据库事务是不可分割的工作单位,事务...

网友评论

      本文标题:<面试题>什么是数据库事务,为什么要有数据库事务,事务的特性,事

      本文链接:https://www.haomeiwen.com/subject/zddyoftx.html