首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于with(nolock)的有关问题

2012-03-08 
关于with(nolock)的问题比如下列语句:select a.a1,a.a2,b.b3 from with(nolock) t1 as aleft join t2 as b

关于with(nolock)的问题
比如下列语句:

select a.a1,a.a2,b.b3 from with(nolock) t1 as a
left join t2 as b on b.id1=a.id

这样写的目的是在于我要查t1的时候,不要锁住t1表,但是left join t2,是否需要加上with(nolock) 呢?

[解决办法]
都去了吧~!
[解决办法]
你那种写法本身是错误的吧
位置不对
select a.a1,a.a2,b.b3 from t1 as a with(nolock)
left join t2 as b on b.id1=a.id

至于要不要nolock就要看你能否接受脏读

[解决办法]
个人认为一般情况下没有必要with(nolock)

[解决办法]
1:数据量特别大的表,牺牲数据安全性来提升性能是可以考虑的;
2:允许出现脏读现象的业务逻辑
3:数据不经常修改的表,这样会省于锁定表的时间来大大加快查询速度。


[解决办法]
一个字:加
[解决办法]

探讨

1:数据量特别大的表,牺牲数据安全性来提升性能是可以考虑的;
2:允许出现脏读现象的业务逻辑
3:数据不经常修改的表,这样会省于锁定表的时间来大大加快查询速度。

[解决办法]
加吧,数据量大的时候就容易死锁了。
[解决办法]
建议都加with(nolock),

对于sql server而言,在高度并发情况下,可减少阻塞及死锁的可能性.

至于数据脏读,应该可以接受,毕竟事务rollback的几率是不大的.

热点排行
Bad Request.