Mysql事务通俗理解

Mysql事务

1.1创建事务

方式一:

begin;

方式二:

start  transaction;

1.2普通操作

(1)提交:

commit

(2)回滚:

rollback;

(3)存节点:

savepoint p1(节点名字);

(4)回滚到某个节点:

roolback p1(节点名字);

1.3四大特性

1.3.1原子性

通俗理解:将事务看作是不可再分的原子,一担开始事务,要么全部执行,要么全部取消,即把

一个事务看着一个整体,牵一发而动全身。

1.3.2一致性

通俗理解:指的是操作数据库中的数据,所准寻的原则在事务前后保持一致,所谓原则,举个例子

就是在定义一个数据类型为非空时,事务操作不改变其性质。

1.3.3隔离性

通俗理解:对于一个事务,如果不提交他,那么这个事务只能在当前进程中查看,别的进程查看不到。

1.3.4持久性

通俗理解:事务一担提交,就不能被撤消,始终被保留。

1.4多事务弊病

1.4.1脏读

对于两个事务 T1, T2, T1 读取了已经被 T2 更新但还没有被事务提交**的字段. 之后, 若 T2 **回滚事务, T1读取的内容就是临时且无效的

1.4.2不可复读

对于两个事务 T1, T2, T1 读取了一个字段, 然后 T2 更新并提交了该字段. 之后, T1再次读取同一个字段, 值就不同了

1.4.3幻读

对于两个事务 T1, T2, T1 从一个表中读取了一个字段, 然后 T2 在该表中插入、删除了一些新的行. 之后, 如果 T1 再次读取同一个表, 就会多出、少了几行.

posted @ 2020-10-22 20:13  沧浪之水ε  阅读(152)  评论(0)    收藏  举报