用SQL Server數(shù)據(jù)庫鎖來定時間的長短方法
此文章主要講述的是用SQL Server數(shù)據(jù)庫鎖來定時間的長短方法,相信如果你掌握了SQL Server數(shù)據(jù)庫鎖來定時間的長短這項技術(shù),會在以后的學習或是工作中帶來很大的幫助,鎖保持的時間長度為保護所請求級別上的資源所需的時間長度。
用于保護讀取操作的共享SQL Server數(shù)據(jù)庫鎖的保持時間取決于事務(wù)隔離級別。采用 READ COMMITTED 的默認事務(wù)隔離級別時,只在讀取頁的期間內(nèi)控制共享鎖。在掃描中,直到在掃描內(nèi)的下一頁上獲取鎖時才釋放鎖。如果指定 HOLDLOCK 提示或者將事務(wù)隔離級別設(shè)置為 REPEATABLE READ 或 SERIALIZABLE,則直到事務(wù)結(jié)束才釋放鎖。
根據(jù)為游標設(shè)置的并發(fā)選項,游標可以獲取共享模式的滾動鎖以保護提取。當需要滾動鎖時,直到下一次提取或關(guān)閉游標(以先發(fā)生者為準)時才釋放滾動鎖。但是,如果指定 HOLDLOCK,則直到事務(wù)結(jié)束才釋放滾動鎖。
用于保護更新的排它鎖將直到事務(wù)結(jié)束才釋放。
如果一個連接試圖獲取一個鎖,而該SQL Server數(shù)據(jù)庫鎖與另一個連接所控制的鎖沖突,則試圖獲取鎖的連接將一直阻塞到:
將沖突SQL Server數(shù)據(jù)庫鎖釋放而且連接獲取了所請求的鎖。
連接的超時間隔已到期。默認情況下沒有超時間隔,但是一些應(yīng)用程序設(shè)置超時間隔以防止無限期等待
上述的相關(guān)內(nèi)容就是對用SQL Server數(shù)據(jù)庫鎖來定時間的長短的描述,希望會給你帶來一些幫助在此方面。
【編輯推薦】