:通常来说一个事务所做的修改在最终提交以前对其他事务是不可见的
持久性:一旦事务提交,则其所做的修改就会永久保存到数据库中
2.sql标准中定义了四种隔离,较低级别的隔离可以执行更高的并发,开销也更低...READ UNCOMMITTED 未提交读,事务中的修改还没提交,其他事务就可以看到,这也是脏读,一般不会用
READ COMMITED 提交读,大多数的默认级别,在提交之前,所做的任何修改对其他事务都是不可见的...脏读:事务可以读取别的事务未提交的脏数据
不可重复读:事务不可以读取未提交的数据,但是如果在另一个事务修改并提交了数据,此时可以读取到,同一事务两次相同的select结果可能会不同
幻读:事务不可以读取未提交的...6.mysql 死锁:
1.两个或多个事务在同一个资源上相互占用,并请求锁定对方占用的资源,导致恶性循环
2.解决这种问题,检测到死锁的循环依赖,立即返回一个错误
3.时间达到了锁等待超时限定,放弃锁请求...4.将持有最少行级写锁的事务回滚
5.如果是真正的数据冲突,这种是很难避免的,必须要提交或回滚其中一个事务
开启事务,更新数据,还没提交
?