mysql中的事务,你理解嘛

事务又叫做TCL,全称是transactioncontrollanguage,意思是事务控制语言。这篇文章还是属于我的mysql基础文章,在前面我们介绍了下面这些基础知识:

1、数据库的增查改删操作

2、数据表的增查改删操作

3、数据的增查改删操作

3、数据的约束以及增查改删

5、Mysql中的内置函数

这篇文章还是基础系列的文章,主要是介绍mysql中的事务,为了保持文章的完整性,就算你没有看过之前的教程也没问题。

一、事务的理解

张三有块钱,李四也有块钱,张三给李四,还剩下,李四此时就有1。我们想象着会执行下面的mysql语句:

updatetableusersetmoney=wherename=张三;

updatetableusersetmoney=1wherename=李四;

但是在计算机中可能会不一样。可能上面语句执行了下面的没有执行,因此为了保证两条语句要么都执行,要么都不执行,这时候就用到了事务。

事务的意思是一条或者是一组语句组成一个单元,这个单元要么全部执行,要么全不执行。

事务具有四个特性,也是面试常考的四个特性ACID:

A(原子性Atomicity):原子性指的是事务是一个不可分割的,要么都执行要么都不执行。

C(一致性Consistency):事务必须使得数据库从一个一致性状态,到另外一个一致性状态。

I(隔离性Isolation):指的是一个事务的执行,不能被其他的事务所干扰。

D(持久性Durability):持久性指的是一个事务一旦提交了之后,对数据库的改变就是永久的。

二、创建一个事务

事务其实可以划分为两大类:隐式的事务和显示的事务

隐式的事务很简单,比如我们的insert、delete、update、select这些语句都是隐式的事务。

显示的事务指的是带有很明显的开始和结束的标记,下面就来创建一个显示的事务。

步骤一:禁用步骤提交功能

setauto


转载请注明:http://www.aierlanlan.com/grrz/4587.html