mysql中:
事务:事务由单独单元的一个或多个SQL语句组成,在这个单元中,每个MySQL语句是相互依赖的。这个单独单元成为不可分割的一个整体。
对于同时运行的多个事务,如果没有适当的隔离机制,就会引发如下问题:
- 脏读
- 不可重复度
- 幻读
mysql提供四种隔离级别,分别是:
- read uncommitted 读未提交数据(什么也不能防止)
- read committed 读已提交数据(仅防止脏读)
- repeatable read 可重复度(仅防止脏读、不可重复读)
- serializable 串行化(防止脏读、不可重复度、幻读)
以下为四种隔离级别以及脏读、幻读、不可重复度的演示。
一、设置隔离级别为read uncommitted, 演示脏读
首先,开启两个命令行窗口(设黑色为A,蓝色为B)。均更改其隔离级别为read uncommitted