知识贴士:什么是“脏”数据?
添加时间: 2008-4-24 20:46:36 作者: Oracle指导 阅读次数:39 来源: http://www.d9soft.com
数据库的并发操作带来的问题主要有以下三种:1)丢失更新问题;2)不一致分析问题(读了过时的数据);3)依赖于未提交更新的问题,在数据库技术中,把未提交的随后又被撤消的数据称为"脏数据"。
通俗一点就是在几个并发进程中,当有若干个进程都用到了数据A,比如当进程1刚刚读了A数据后,进程2就对A数据进行了某种计算操作,将数据A的值改变了并保存了,此后进程1本想再次读取原A数据,结果读取的却是已经改变的A数据,这样导致进程1的数据发生了错误,就把此时进程1读取已经改变的A数据称为读“脏数据”。
举个例子:
(t1,t2)是两个进程
t1 t2
A: 读c=100
c=c*2
写回
C:
读c=200
B:C恢复为100
这样t2进程读了个脏数据
上下文章:
上一篇文章: Oracle如何精确计算row的大小 下一篇文章: 如何定义数据库表之间的关系
相关文章:

