我陷入了死鎖問題,在這裏我正在努力尋找根本原因......死鎖圖表顯示UPDATE語句成爲SELECT語句的受害者... 令我困惑的是該UPDATE語句正試圖收購上是從來沒有在更新語句中引用一些其他表的索引...SQL Server 2008死鎖問題
這是我的UPDATE語句看起來像......
UPDATE Table set col1 = @P1 where col2 = @P2
這種說法獲得了X鎖定col2索引,但也嘗試獲取某個其他表中與U無關的列中定義的索引PDATE語句...
贏得死鎖情況的SELECT語句與update語句中的表或索引無關,但試圖在UPDATE語句中獲取表中的索引。最終導致DEADLOCK。
你可能想檢查你的約束和依賴關係。也許被UPDATE鎖定的表有一個約束或觸發器,或者當你的UPDATE表被修改時修改它。 – tloflin 2010-03-31 22:30:04