相关疑难解决方法(0)

在保证不会更改的表上使用 NOLOCK 提示是否完全安全?

  1. 如果我有一个数据保证永远不会更改的表,那么将 NOLOCK 提示添加到针对该表的 SELECT 查询中是否完全安全?
  2. 如果我有一个表,其中某些行将被更新,但我只选择保证不会更改的行,这是否也是使用 NOLOCK 提示的完全安全的方案?

performance sql-server optimization hints sql-server-2016 query-performance

5
推荐指数
1
解决办法
1602
查看次数

我可以使用`WITH(NOLOCK)`来防止死锁吗?

我只有一张桌子InsertDelete而且Select(没有Update

在插入时,有时使用会话锁 ( WITH (TABLOCKX))

我有一个使用 ADO 的程序,它Select从表中使用RecordSet::Open命令打开一个简单的顺序查询。

喜欢:

Select * from t1 where id >= @from_id And >= @to_id`  
Run Code Online (Sandbox Code Playgroud)

或者:

Select top(10) * from t1 where id >= @id Order by id 
Run Code Online (Sandbox Code Playgroud)

id 列是一Identity列。

当我打开查询时,有时会陷入僵局。(表被Insert查询锁定,id 列的索引被 锁定Select

我正在努力防止僵局。

我应该打开选择查询WITH(NOLOCK)吗?它可以防止死锁吗?

sql-server deadlock nolock

1
推荐指数
1
解决办法
608
查看次数