在事务中更新的行上放置了什么类型的锁?

时间:2016-03-12 22:17:24

标签: transactions locking sql-server-2014 transaction-isolation

如果我在SQL Server中启动具有隔离级别“read uncommitted”的事务,那么我读取并更新某一行,该行是否因为成为事务的一部分而被锁定?

如果另一个事务(也是read uncommitted)尝试读取并更新该行,只要第一个事务尚未完成,它是否会被阻止?

1 个答案:

答案 0 :(得分:0)

读取未提交的隔离级别不会放置共享锁,而是放置独占锁。因此会话2是否被会话1阻止取决于以下场景:

如果第二个会话正在尝试更新已经通过会话1进行x锁定的行。那就是第二个会话正在尝试将x锁定放在会话一个已经锁定x锁定的同一行上