事务:是指数据库中的一连串的连续操作,而且这一系列连续的操作要么全部执行成功,要么全部执行不成功。具有着原子性。
事务的特点:
1,原子性:要么都执行成功,要么都不成功
2,一致性
3,隔离性:不同的事务不知道对方的执行过程以及执行到了什么程度
4,持久性:每个事务执行完毕必然会对数据库进行数据的持久化修改
脏读:两个事务并发执行,当事务1 对数据库中的表进行了修改之后,事务2 对记录进行读取,但是事务1 由于某些原因没有能够保存修改,进行了回滚,那么事务2 读取的数据便是脏数据。
不可重复读: 两个事务并发执行,事务1 首先对记录进行读取,然后在事务1 再次对记录进行读取之前,事务2 已经对记录进行了修改,那么事务1 对数据库中某条记录的读取结果是不一样的,也就是说没有重复的读取出相同结果。
幻读: 两个事务并发执行,幻读主要是针对数据库的许多记录,由于表中的记录条数的增加或者减少,从而产生的幻读。如 : 事务1 对某张表中的所有记录进行了修改,将每条记录的某条属性(如:level)进行了统一修改,但是接下来事务 2 对该表进行了记录的添加,增加了一条新的记录,这条记录的level 属性与其他所有的记录不一致。那么当事务1 在对表中记录进行读取的时候,便会读取到这一条 没有修改过level 的记录,就会觉得之前的修改操作是不是幻觉,是不是之前的修改操作没有执行成功。