日期:2014-05-17  浏览次数:20845 次

设置事务的隔离级别本质上是不是就是启动了oracle默认的封锁机制?
设置事务的隔离级别与封锁有什么区别,看到很多书都分别讲述,但感觉设置事务的隔离级别好像就是封锁。

------解决方案--------------------
首先搞清楚下概念,事务隔离级别是SQL种标准理论,目的是为了处理并发程度与数据一致性之间的关系而定义的。

这个事务隔离理论在不同的数据库里是有差别的的,例如ORACLE实现了其中的3中级别,sql server....

而如何实现的事务隔离呢,锁是实现这个概念的重要部分,而同样每个数据库有不同的封锁机制锁。
------解决方案--------------------
读的数据是从undo读取的。数据存储地址的数据还是不允许读取的。
探讨

还有一个问题,我看萨石宣的教材上说“排他锁在释放之前其他事务不能再读取加锁的数据对象”,但是oracle中的行级锁是排他锁,但使用update语句更新时,还是可以查询到原来的数据。是不是不同的数据库的排他锁也不同?