锁定长度指一个用户或应用程序所执行的SQL指令取得某一对象上的锁定后,这个锁定会持续到何时才释放。
1)写锁定。会持续到事务结束(确认或回滚)才释放开。
2)读锁定。持续到何时与事务隔离级别有关。下面就结束下DB2的事务隔离级别:
a。Repeatable Read(RR)所有的读锁定在事务结束时才释放。
b。Read Stability(RS)在符合条件的记录上所取得的锁定,会持续到事务结束时才释放,在不符合条件的记录上的锁定会在读取下一笔记录时就立即释放。
c。Cursor Stability(CS)目前所读取的记录上的锁定,会在读取下一笔记录时立即释放。
d。Uncommitted Read(UR)在读取记录时,不会取得锁定。因此会发生Dirty Read。
DB2默认的隔离级别是CS。可以通过命令改变隔离级别:
change isolation to RR;
也可以在sql中直接指定隔离级别:
select name,salary from employees where empno=89 with RR;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/165278/viewspace-448617/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/165278/viewspace-448617/
本文介绍了DB2数据库中锁定的概念及其与事务隔离级别的关系。详细解析了不同隔离级别下读锁定的行为,并提供了如何更改隔离级别的方法。
653

被折叠的 条评论
为什么被折叠?



