四大特征

原子性

事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。

一致性

指在事务开始之前和事务结束以后,数据不会被破坏
例:假如 A 账户给 B 账户转 10 块钱,不管成功与否,A 和B 的总金额是不变的。

隔离性

多个事务并发访问时,事务之间是相互隔离的,即一个事务不影响其它事务运行效 果。简言之,就是事务之间是互不影响的。

持久性

表示事务完成以后,该事务对数据库所作的操作更改,将持久地保存在数据库之中。

事务隔离级别

读未提交

可以读取其它事务未提交的数据

读已提交

该事务可以读取到其他事务提交的数据

可重复读(默认级别)

事务开启后,不在允许修改数据

串行读

加锁读,串行执行

事务问题

脏读

读取到了其他事务没有提交的数据

不可重复读

同一个事务前后两次查询的数据不一致

幻读

一次事务中前后数据量发生变化