【发布时间】:2013-03-06 19:38:33
【问题描述】:
我们的 SQL Server 2008 数据库中的表可以同时写入和读取(正常隔离级别)。
一位同事想知道在针对该表的选择查询中使用 (updlock) 的查询提示是否会减少死锁,但我不太确定该怎么做。
我在想,如果正常的共享读锁会导致超时,那么在这种情况下,更新锁肯定也会导致死锁吗?!还是我错过了什么?
谢谢大家!
【问题讨论】:
-
长块和死锁之间有一个重要的区别。我可以想象添加
with (updlock)可能会导致死锁并防止死锁的场景......需要回答一些问题才能为您提供除推测之外的任何其他内容,以及最简单的方法来回答这些问题是显示死锁中涉及的 Sql 命令,以及这些表上的任何索引。
标签: sql-server-2008 deadlock locks query-hints