1.事务对数据库控制操作

事务(Transaction)是用户定义的一个数据库操作序列,是不可分割的一部分的整体。这些操作要么做,要么不做(原子性)。事务是对数据库对进行操作的最基本的逻辑单位,他可以是一组SQL语句或者一条SQL语句或者整个程序,通常情况一个应用程序应该包含多个事务,此外,事务是恢复和并发控制的基本单位。

2.事务的特性

事务的的四大特性(ACID) 

原子性:A (Atomicity)    事务是数据库的逻辑工作单位,事务中的操作要么做,要么就不做。

一致性:C(Consistency)  事务的结果必须是数据库从一个一致性到另一个一致性的状态。(一致性是指数据库执行成功的结果,不一执行是指数据库中也包含执行失败的结果)

隔离性:I (Isolation)  一个事务的执行不能被其他事务所干扰。一个事务内部的操作及使用的数据对对其他并发事务是隔离的,并发的执行的各个事务之间不能相互干扰。

持久性:D(Durability)一个事务一旦提交,其数据库中数据的改变应该是永久的,该事务中接下来的其他操作或产生的故障不应该对其执行结果有任何影响.

例子:取钱

某个银行数据库转帐 A(10000)A向B转账1000  B(原1000)

[第一步确定A账户是否有1000]

[第二步 A-b=9000]

[第三 写入A账户9000]

[第四步 B账户余额为1000]

[第五 写入账户B+1000]

[第六] 写入2000

转账事务处理流程

在正确执行的情况下,A的余额是9000,B的余额是2000,二者的金额之和等于事务未发生之前的和,称之为数据库的数据从一个一致性状态转移到了另一个一致性的状态,数据的完整性和一致性得到了保障。

假如在事务的处理过程中完成了第三步,未完成第六步,过程中出现了断电,这样就会出现A=9000,B=1000.很显然 一致性遭到了破坏,不能反映数据库的真是情况。因此必须还原到A=10000   B=1000的真实情况,进行回滚,这就是原子性的含义.——实现原子性(对于事务中的写操作的数据项,数据库系统在磁盘上记录着旧值,如果事务如果没有完成,没有全部就必须回滚,这就是原子性的含义).

3.事务状态

提交状态和中止状态的事务叫做已经解决的事务,处于活动中,部分提交状态和失败状态的事务称为未解决的事务

Oracle 事务ACID的特性的更多相关文章

  1. 【原创】Mysql中事务ACID实现原理

    引言 照例,我们先来一个场景~ 面试官:"知道事务的四大特性么?" 你:"懂,ACID嘛,原子性(Atomicity).一致性(Consistency).隔离性(Isol ...

  2. Mysql中事务ACID实现原理

    引言 照例,我们先来一个场景~ 面试官:"知道事务的四大特性么?"你:"懂,ACID嘛,原子性(Atomicity).一致性(Consistency).隔离性(Isola ...

  3. 【转】Mysql中事务ACID实现原理

    转自:https://www.cnblogs.com/rjzheng/p/10841031.html 作者:孤独烟 引言 照例,我们先来一个场景~ 面试官:"知道事务的四大特性么?" ...

  4. Oracle事务的ACID特性

    Oracle事务的ACID特性 1.原子性(Atomicity) 事务的原子性是指事务中包含的所有操作要么都做,要么都不做,保证数据库是一致的. 例如:A帐户向B帐户划账1000,则先将A减少1000 ...

  5. 数据库中事务的四大特性(ACID)

    本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别. 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity) 原子性是指事务 ...

  6. 【概念原理】四种SQL事务隔离级别和事务ACID特性

    摘要: SQL事务隔离级别和事务的ACID特性 事务是一组读写操作,并且具有只有所有操作都成功才算成功的特性.   事务隔离级别 SQL事务隔离级别由弱到强分别是:READ_UNCOMMITTED.R ...

  7. 什么是事务?事务的四个特性(ACID)?并发事务带来哪些问题?事务隔离级别都有哪些?事务的传播特性

    什么是事务? 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做. 事物的四个 ...

  8. 事务的四大特性(ACID):

    事务的四大特性(ACID):    1.原子性(Atomicity): 事务中所有操作是不可再分割的原子单元.事务中所有操作要么都执行成功,要么都执行失败. 2.一致性(Consistency): 事 ...

  9. 事务ACID特性

    所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位.例如,银行转帐工作:从一个帐号扣款并使另一个帐号增款,这两个操作要么都执行,要么都不执行. 数据库事务必须具备 ...

随机推荐

  1. 获取本地计算机名称和Ip地址

    using System.Net; Dns.GetHostName();//获取本地计算机主机名 IPAddress[] IP = Dns.GetHostAddresses(Dns.GetHostNa ...

  2. 手把手教你DIY尼康ML-L3红外遥控器

    项目介绍 ML-L3是用于尼康部分型号相机的无线红外遥控器,可以通过红外方式来控制快门的释放,支持B门拍摄.官方售价100RMB左右,山寨版售价10RMB左右.虽然也能实现基本的遥控功能,但是功能还是 ...

  3. JS---封装getScroll函数 & 案例:固定导航栏

    封装getScroll函数 1. 获取页面向上或者向左卷曲出去的距离的值 2. 浏览器的滚动事件 function getScroll() { return { left: window.pageXO ...

  4. 小程序填坑——bindconfirm事件

    一.介绍 当你要在手机软键盘中触发一些方法,就可以使用input标签的bindconfirm事件.这个事件的作用是当你在软键盘上点击确认的时候,将触发你指定的方法. 还可以使用confirm-type ...

  5. https的原理

    https目的是为了防止第三方截获信息,原理是使用非对称加密和数字证书认证传输密钥建立连接,使用密钥对称加密信息进行通讯. https建立连接的过程: 数字证书原理:

  6. harbor部署之SSL

    harbor部署之SSL 1 签名证书与自签名证书 签名证书:由权威颁发机构颁发给服务器或者个人用于证明自己身份的东西. 自签名证书:由服务器自己颁发给自己,用于证明自己身份的东西,非权威颁发机构发布 ...

  7. ASP.NET Core身份验证

    asp.net core 身份验证 本文旨在演示如果使用内置的 identity 实现 asp.net core 的身份验证,不会进行其它扩展.本文将通过最简单的代码演示如何进行登录和身份验证操作. ...

  8. sparql 查询语句快速入门

    介绍 RDF is a directed, labeled graph data format for representing information in the Web. RDF is ofte ...

  9. Android 获取当前IP地址

    首先设置用户权限 <uses-permission android:name="android.permission.INTERNET"></uses-permi ...

  10. NET Framework项目移植到NET Core上踩的坑(1)

    本文章向大家介绍NET Framework项目移植到NET Core上遇到的一系列坑,主要包括NET Framework项目移植到NET Core上遇到的一系列坑使用实例.应用技巧.基本知识点总结和需 ...