文档章节

数据库事物的ACID简明记忆

面码
 面码
发布于 2015/04/27 21:20
字数 302
阅读 60
收藏 0

#数据库事物的ACID简明记忆

##概述

  • A(原子性) 比方A转给B100元Q币,如果A的Q币被扣除后转给B的过程中失败,则需要回滚到初始状态。不然A用户的Q币就失踪了
    begin transaction  
    update account set money= money - 100 where name='A';  
    update account set money= money +100 where name='B';  
    if Error then  
           rollback  
    else  
           commit 
  • C(一致性) 玩家A给B玩家B加了999的血,但B玩家最大血量为1(笑),这时不能使B玩家生命值超过1啦,需要使用触发器等做下约束啦。
  • i(独立性) 参考进程线程的竞争啦,实际是竞争问题
  • D(持久性) 从外部来看丢给数据的数据一旦成功数据库就不行该因挂掉等任何原因说数据丢了(不然用户就哭啦),于是像SQL SERVER把用户的东东真正写到数据库前都先写到日志中,这样即使数据库中途停掉,下次开启时也能根据日志将事务重新下发。

##参考 http://blog.csdn.net/shuaihj/article/details/14163713

© 著作权归作者所有

共有 人打赏支持
面码
粉丝 26
博文 293
码字总数 72288
作品 0
成都
程序员
私信 提问
分布式领域CAP理论-学习整理

分布式领域CAP理论: Consistency(一致性), 数据一致更新,所有数据变动都是同步的。 Availability(可用性), 好的响应性能。 Partition tolerance(分区容错性) 可靠性。 要做到 CP, 系统可以...

落叶刀
2016/01/20
64
0
MySQL数据库事务特性简析 数据库开发

  MySQL数据库学习中,总有人会遇到问题,在面对问题的时候,我们一般都是自己先思索、解决,自己无法解答的时候,求助于他人。这是一个很好的习惯,有自学的能力,也有请教的态度。那么有...

老男孩Linux培训
2018/07/06
0
0
mysql 5.7 入门增删改查

前言 mysql 5.7版本 以下内容为mysql入门基础教程,在这里我总结一下。 1.创建数据库 msyql安装完成之后,将会在其data目录下自动创建几个必需的数据库,可以使用show databases;语句来查看...

李伟铭k
2018/07/09
0
0
如何做数据存储架构技术选型怎么做?

在互联网应用中,数据爆发式的增长,实际上软件架构的本质就是对数据的维护。对数据的操作可以归纳为三类:读、写和检索。 随着网站的流量越来越大,数据量也爆发式的增长,网站响应越来越慢,...

雨中沙漠
2017/11/14
0
0
JDBC--处理事务与隔离级别

一、事务 在数据库中,所谓事务是指一组逻辑操作单元,使数据从一种状态变换到另一种状态。 (1)事务的ACID(acid)属性 1. 原子性(Atomicity) 原子性是指事务是一个不可分割的工作单位,事务...

大道无名
2016/07/02
38
0

没有更多内容

加载失败,请刷新页面

加载更多

乱入Linux界的我是如何学习的

欢迎来到建哥学Linux,咳!咳!咳!开个玩笑哈,我是一个IT男,IT界的入门选手,正在学习Linux。 在之前,一直想进军IT界,学习IT技术,但是苦于没有人指导,也不知道学什么,最开始我自己在...

linuxprobe16
44分钟前
5
0
OSChina 周日乱弹 —— 没时间 没头发 但有钱

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @开源中国总经办主任 :分享齐一的单曲《这个年纪》 《这个年纪》- 齐一 手机党少年们想听歌,请使劲儿戳(这里) @肿肿卷 :我真的可以睡一天...

小小编辑
今天
59
4
Django进阶 1.1 ORM基础—ORM 1.2.1 增删改查之查询 1.2.2 删改增 (1) 1.2.3 删改增 (2)

ORM基础 ORM是Django操作数据库的API,Django的作者将sql语句封装在里面供我们使用。 我们前面还提到过Django提供一个模拟数据库的工具,sqlite,供我们学习测试使用。 如果我们想使用mysql...

隐匿的蚂蚁
今天
3
0
Windows 上安装 Scala

在安装 Scala 之前需要先安装 Java 环境,具体安装的详细方法就不在这里描述了。 您可以自行搜索我们网站中的内容获得其他网站的帮助来获得如何安装 Java 环境的方法。 接下来,我们可以从 ...

honeymose
今天
3
0
数据库篇多表操作

第1章 多表操作 实际开发中,一个项目通常需要很多张表才能完成。例如:一个商城项目就需要分类表(category)、商品表(products)、订单表(orders)等多张表。且这些表的数据之间存在一定的关系...

stars永恒
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部