前言
對于上述鎖其實是一個老生常談的話題了,但是我們是否能夠很明確的知道在什么情況下會存在上述各種鎖類型呢,本節(jié)作為SQL Server系列末篇我們 來詳細講解下。
Range-Lock
上述關(guān)于RangeS-U、RangeS-S、RnageX-X以及還有RangeI-N這四種鎖屬于范圍鎖(Range-Lock)范疇。那么在什么情況下會存在范圍鎖呢,當(dāng)在SERIAhttp://www.cnblogs.com/CreateMyself/p/6523342.htmlLIZABLE最高隔離級別時范圍鎖將會被用到,這也就意味著直到事務(wù)開啟到結(jié)束查詢出的結(jié)果集是一致的以此來防止幻影。在該隔離級別中鎖定的數(shù)據(jù)集合基于覆蓋了所查詢出的行的索引的鍵值范圍,以此來確保鎖定的范圍的值不會被修改或者其他并發(fā)事務(wù)不會為相同的值范圍插入新值,任何其他事務(wù)對范圍內(nèi)數(shù)據(jù)的修改、添加和刪除都需要修改索引,所以此時將會被阻塞,因為范圍鎖覆蓋了索引條目。下面我們一個個來分析何時出現(xiàn)哪種類型的范圍鎖。
RangeS-S
首先我們創(chuàng)建測試表
CREATE TABLE RangeLock (RId int NOT NULL IDENTITY (1, 1) PRIMARY KEY, Rname nvarchar (20), SName nvarchar (20))
接下來插入測試數(shù)據(jù):
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26