wmaciel Asked: 2022-07-30 11:05:47 +0800 CST 为什么 SQL Server 查询会两次请求同一个锁并出现死锁? 2 我有 SQL Server 数据库,当两个查询尝试获取它们已经拥有的同一个表的锁时,它会一直死锁。 上面的死锁图让我很困惑。两个PageLock是相同的,这让我相信它们是同一个页面。这似乎表明两个进程都已经拥有对该页面的锁定。左边的那个拥有一个更新(U)锁,而右边的那个拥有一个意图排他(IX)锁。 这怎么可能呢? 为什么他们在获取他们已经拥有的锁时会被阻止? 左边进程的查询是: 右侧进程查询为: sql-server deadlock