脏数据在临时更新(脏读)中产生。事务A更新了某个数据项X,但由于某种原因,事务A出现了某种问题,于是要把A回滚。但在回滚之前,另一个事务B读取了数据项X的值(A更新后的),A回滚了事务,数据项恢复了原值。事务B读取的数据就是数据项X的一个“临时”的值,就是脏数据!