sql防止查询锁表

来源:互联网 发布:minecraft 编程 编辑:程序博客网 时间:2024/05/29 07:57

sql后面加with ur的作用可以避免在查询数据库的时候锁死数据库。

DB2中,共有四种隔离级:RS,RR,CS,UR
UR:UR-Uncommitted Read 未提交读,是sql执行时的一种隔离级别,允许脏读,不加行锁,作用是在select的时候,不需要对update的数据进行等待

具体with后面加哪个的问题解释如下:

1、ur(Uncommited Read)        就是俗称“脏读“,在没有提交数据的时候能够读到更新的数据;
2、cs(Cursor Stability)              在一个事务中进行查询时,允许读取提交前的数据,数据提交后,当前查询就可以读取到数据,update数据的时候并不锁表
3、rs(Read Stability)                 在一个事务中进行查询时,不允许读取其他事务update的数据,允许读取到其他事务提交的新增数据
4、rr(Repeatable Read)           在一个事务中进行查询时,不允许任何对这个查询表的数据修改