数据库事务的隔离级别有4种,为Read uncommitted 、Read committed 、Repeatable read 、Serializable 。试验验证,假设有两个sql客户端开启事务。sql1和sql2:
假设存在account表:
1.Read uncommitted (set session transaction isolation level read uncommitted; )
sql1 update以后,select是中间状态username='lily', sql2也是,说明select到了中间的脏数据。如果sql1 rollback,则两边的select数据又变回了username = 'john';