脏读是读了没有提交到数据库中数据我懂?但

脏读是读了没有提交到数据库中数据我懂?但,第1张

对,脏读就是在查询时,有人在更改数据,这样数据就不统一,这是oracle的多版本性(可不是oracle的版本号哦!)和并发性,你可以理解成缓存,就是在没提交之前的临时存放区域,如果你是别的数据库这就需要另解释了,建议你学习一下undo,redo,对你学习oracle绝对有帮助。

比如当数据高速缓冲区没有多余空间,而oracle需要cache新数据库块,则通知dbwr将某些脏数据块写人数据文件。而不管这些脏数据是否提交。

当然,你不用担心,万一你回滚,oracle会通过undo数据回滚,清除前面写入数据文件的数据。

Oracle在更新数据时,会将旧的数据写入undo data。如果数据更新还没有commit,其他会话看到的就是旧的数据,即undo data,这被称为一致性读取。

但是不管提交还是没有提交,自己的当前会话看到的都是新的数据。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9972666.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存