濮阳杆衣贸易有限公司

主頁 > 知識庫 > SQL Server三種鎖定模式的知識講解

SQL Server三種鎖定模式的知識講解

熱門標(biāo)簽:優(yōu)質(zhì)地圖標(biāo)注 千呼電銷機(jī)器人價(jià)格 武漢長沙外呼系統(tǒng)方法和技巧 京華物流公司地圖標(biāo)注 智能語音外呼系統(tǒng)選哪家 百度地圖標(biāo)注不同路線 怎樣在地圖上標(biāo)注路線圖標(biāo) 外呼系統(tǒng)電銷專用 奧威地圖標(biāo)注多個(gè)地方

sql server 鎖定模式有三種:共享( S鎖),更新(U鎖),排他(X鎖);

S鎖是共享鎖,如果事務(wù)T對數(shù)據(jù)A加上共享鎖后,則其他事務(wù)只能對A再加共享鎖,不能加排他鎖。獲準(zhǔn)共享鎖的事務(wù)只能讀數(shù)據(jù),不能修改數(shù)據(jù)。

個(gè)人理解為,對數(shù)據(jù)A的操作就只能是SELECT ,(聯(lián)想下,S鎖,不就是Select的首字母么),其他事務(wù)對A數(shù)據(jù)的UPDATE ,DELETE都不能進(jìn)行;

U鎖是更新鎖。用于可更新的資源中。防止當(dāng)多個(gè)會話在讀取、鎖定以及隨后可能進(jìn)行的資源更新時(shí)發(fā)生常見形式的死鎖。

原理解釋:

更新鎖

更新 (U) 鎖可以防止通常形式的死鎖。一般更新模式由一個(gè)事務(wù)組成,此事務(wù)讀取記錄,獲取資源(頁或行)的共享 (S) 鎖,然后修改行,此操作要求鎖轉(zhuǎn)換為排它 (X) 鎖。

如果兩個(gè)事務(wù)獲得了資源上的共享模式鎖,然后試圖同時(shí)更新數(shù)據(jù),則一個(gè)事務(wù)嘗試將鎖轉(zhuǎn)換為排它 (X) 鎖。

共享模式到排它鎖的轉(zhuǎn)換必須等待一段時(shí)間,因?yàn)橐粋€(gè)事務(wù)的排它鎖與其它事務(wù)的共享模式鎖不兼容;發(fā)生鎖等待。

第二個(gè)事務(wù)試圖獲取排它 (X) 鎖以進(jìn)行更新。

由于兩個(gè)事務(wù)都要轉(zhuǎn)換為排它 (X) 鎖,并且每個(gè)事務(wù)都等待另一個(gè)事務(wù)釋放共享模式鎖,因此發(fā)生死鎖。

若要避免這種潛在的死鎖問題,請使用更新 (U) 鎖。一次只有一個(gè)事務(wù)可以獲得資源的更新 (U) 鎖。

如果事務(wù)修改資源,則更新 (U) 鎖轉(zhuǎn)換為排它 (X) 鎖。否則,鎖轉(zhuǎn)換為共享鎖。

個(gè)人理解,打個(gè)比方,A,B都拿把槍指著對方說:”我等你放下槍我就放下槍“,大家都等對方放下槍,于是就這么死僵持著......

X鎖是排他鎖,也叫獨(dú)占鎖,事務(wù)對A資源的insert ,update ,delete要用獨(dú)占,不然的話亂套了;這是為了保護(hù)數(shù)據(jù)再一次操作中的準(zhǔn)確性;

個(gè)人理解就是,一次一個(gè)....

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

您可能感興趣的文章:
  • SQL Server 2008數(shù)據(jù)庫分布式查詢知識
  • SQL Server游標(biāo)的介紹與使用
  • SQL Server視圖的講解
  • Sql Server的一些知識點(diǎn)定義總結(jié)
  • C#連接SQL Server的實(shí)現(xiàn)方法
  • laravel5使用freetds連接sql server的方法
  • 詳解易語言操作sql server實(shí)例
  • SQL Server中的SELECT會阻塞SELECT嗎
  • sqlserver2008首次登錄失敗問題及解決方法
  • SQL Server四個(gè)系統(tǒng)表的知識講解

標(biāo)簽:益陽 防疫戰(zhàn)設(shè) 威海 銅仁 天水 來賓 七臺河 宿州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL Server三種鎖定模式的知識講解》,本文關(guān)鍵詞  SQL,Server,三種,鎖定,模式,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQL Server三種鎖定模式的知識講解》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQL Server三種鎖定模式的知識講解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    方正县| 潜江市| 枞阳县| 勐海县| 庄浪县| 竹山县| 滨海县| 伊春市| 襄樊市| 普定县| 祁连县| 淮滨县| 无棣县| 双辽市| 武胜县| 潞城市| 东莞市| 延庆县| 衢州市| 民权县| 汉中市| 房产| 深泽县| 黎城县| 诸暨市| 修水县| 华容县| 遂溪县| 绵竹市| 新郑市| 马山县| 临高县| 长兴县| 恭城| 大姚县| 温泉县| 南投县| 绥德县| 西畴县| 正蓝旗| 分宜县|