我發現了一個SQL查詢超時一個簡單的查詢:如何在SQL Server中調試查詢超時?
delete from Prices where Id=123
Id
是一個PK列。服務器沒有處於高負載狀態 - 其他幾個查詢出現問題。我如何調試這種情況?我使用SQL Server Express 2008.
謝謝!
UPD1將表格重命名以匹配真實姓名。
我發現了一個SQL查詢超時一個簡單的查詢:如何在SQL Server中調試查詢超時?
delete from Prices where Id=123
Id
是一個PK列。服務器沒有處於高負載狀態 - 其他幾個查詢出現問題。我如何調試這種情況?我使用SQL Server Express 2008.
謝謝!
UPD1將表格重命名以匹配真實姓名。
如果您認爲該查詢在另一個上被阻止,您可以按照this blog post中的查詢進行操作,該查詢顯示如何識別阻止的查詢。一旦你弄清楚了,你可以調查問題的查詢。
感謝您的鏈接。解決問題的最佳策略是什麼?在catch中執行一些語句(TimeOutException)? –
當您認爲您的查詢超時時,請運行來自我鏈接到的站點的診斷查詢。如果問題的原因阻止該查詢可能返回結果,則表明查詢被阻止。您將能夠看到RequestingText和BlockingText,它可以幫助您找出導致阻塞的兩個查詢在做什麼。 –
謝謝!會嘗試。 –
你有一個名爲table?這可能是問題所在。你如何執行查詢?通過SQL Studio?存儲過程? SqlCommand的?
編號表名稱是價格。我使用Spring.NET HibernateTemplate.Delete。也許Spring.NET有些問題... –
更新了我的問題。 –
查看查詢計劃。 – Oded
看起來沒什麼特別的。也許我完全不瞭解它。聚簇索引掃描,聚簇索引刪除,半連接,斷言和刪除 –