表锁SQL Server 2会话

时间:2018-09-28 14:28:46

标签: sql sql-server tsql locking sql-server-2016

我对sql server上的表锁有疑问。

例如,我有一张桌子:

RowN    RowText
----------------
1       Row1
2       Row2
3       Row3

在会话1中,我需要更新表,特别是“ Row1”:

begin tran
update table
set RowText = 'Row11'
where RowN = 1

但是,在会话2中(所以另一个用户查询同一张表),我只想查看未在会话1中被更新锁定的记录:

select * from table

RowN    RowText
----------------
2       Row2
3       Row3

这可能吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

我认为您想要READPAST提示:

select  *
from    test with(readpast)

它将跳过当前锁定的行。