什么是事务?
事务是指一连串的逻辑操作,要么全部成功要么全部失败
ACID
原子性:事务是原子的不可在拆分要么全部成功,要么全部失败
隔离性:事务与事务之间是相互隔离的,一个事务的操作不会影响到其他事务
一致性:事务修改数据,从一个状态到另一个状态,对整个数据的完整性保持稳定
持久性:数据的修改正确提交是永久性的不能回滚
脏读:A事务去修改 某一数据 但是没有提交事务,B去查询的时候 查询到了A没有提交的事务,这时候就发生了脏读
不可重复读:A事务去修改某一数据 已经条件了的,刚好修改的数据 在B事务的查询范围之类 导致第一次查询和第二次查询到的数据 不一致
幻读:网上很多写的有问题 A增加和删除某一数据 然后B两次查询 多了或少了一条数据 这个是不可重复读 并不是 幻读 幻读是A去修改 某一数据 刚好在B的查询条件之类 B去查询 两次都没有 查到更新的那条数据 就像出现了幻觉一样 一般是select where 发现不存在 然后set 错误
事务的隔离级别
mysql默认隔离级别为可重复读