我有一個簡單的SQL調用,比如: -SQL Server 2008的超時過期錯誤
select col1,col2 from table1
,有時系統運行如下: -
update table1
set col3 = 'something'
where col1 ='s1' and col2 ='s2'
這些查詢都是通過運行各種應用程序運行我們的服務器,它只發生在一個有100k行的桌子上。
我有幾百萬行的表 - 它不超時,但不知道爲什麼它在這一行。
這些查詢運行一整天,沒有任何問題,但有時白天 - 特別是在高峯時段 - 他們失敗,錯誤 - 超時過期 -
能否請你告訴我,我可以嘗試解決此錯誤是什麼東西
我需要執行某種類型的鎖定嗎?
同樣,如果用戶正在更新評論,然後系統上的其他用戶嘗試更新表中的同一行 - 是否超時第二個用戶,因爲該行被鎖定以進行編輯 - 是否有解決方法?
你有在col1和col2上的指數? –
你是指什麼意思? - 你是說如果它是主鍵? – Jatin
是的 - 就像主鍵 - 你可能需要col1和col2上的複合索引(多於一列的索引),這可能有助於你的UPDATE查詢。 –