您现在的位置是:首页 > 博文答疑 > DB2笔记系列 2 - 隔离级别(ISOLATION)博文答疑

DB2笔记系列 2 - 隔离级别(ISOLATION)

Leo2016-08-22【4】

简介DB2 隔离级别 ISOLATION

ISOLATION(RR):可重复读。程序中的页锁和行锁一直保持,直到一个工作单元结束,这期间其他程序不能修 

            改该表。在同一个工作单元内,如果按相同的条件作两次查询,返回的数据是完全一样的。

ISOLATION(RS):读稳定。程序中的页锁和行锁一直保持,直到一个工作单元结束,这期间对已有数据不能更 

            改,但是可以INSERT新的记录。在同一个工作单元里如果按相同的条件作两次查询,第一次   

           得到的数据第二此能原样,但是有可能查询到比第一次更多的记录。

ISOLATION(CS):游标稳定。使用CURSOR处理数据时,凡已被FETCH出来的数据允许被其他程序更改,还没有被

             度过的数据不允许其他程序修改。在同一个工作单元内,如果按相同的条件做两次查询,返  

            回的数据可能是不一样的。一般情况下CS级别技能保证数据的有效性,有能提供最大的可并    

          发性。

ISOLATION(UR): 脏读。UP级别程序读取数据时不加锁,这时它可能读到“脏”数据,比如另一个程序在一个 

             UOW里对两个账户转账,如果正在从A账户完成扣款,但尚未在B账户存款时,UR的程序对账户  

            进行查询,可能会发现有一笔钱不翼而飞的错误。

 

Example: This statement:

SELECT MAX(BONUS), MIN(BONUS), AVG(BONUS)

INTO :MAX, :MIN, :AVG FROM DSN8710.EMP

WITH UR;