主頁 > 知識庫 > 淺析Sql server鎖,獨占鎖,共享鎖,更新鎖,樂觀鎖,悲觀鎖

淺析Sql server鎖,獨占鎖,共享鎖,更新鎖,樂觀鎖,悲觀鎖

熱門標(biāo)簽:慶陽地圖標(biāo)注 承德地圖標(biāo)注公司名需要花錢嗎 怎么給高德做地圖標(biāo)注 咸陽電腦外呼系統(tǒng)運營商 浙江穩(wěn)定外呼系統(tǒng)供應(yīng)商 美團地圖標(biāo)注商戶認證注冊 榕城市地圖標(biāo)注 電銷外呼系統(tǒng)軟件功能 北京400電話辦理多少錢

鎖有兩種分類方法。
(1) 從數(shù)據(jù)庫系統(tǒng)的角度來看
鎖分為以下三種類型:

•獨占鎖(Exclusive Lock)
獨占鎖鎖定的資源只允許進行鎖定操作的程序使用,其它任何對它的操作均不會被接受。執(zhí)行數(shù)據(jù)更新命令,即INSERT、 UPDATE 或DELETE 命令時,SQL Server 會自動使用獨占鎖。但當(dāng)對象上有其它鎖存在時,無法對其加獨占鎖。獨占鎖一直到事務(wù)結(jié)束才能被釋放。

•共享鎖(Shared Lock)
共享鎖鎖定的資源可以被其它用戶讀取,但其它用戶不能修改它。在SELECT 命令執(zhí)行時,SQL Server 通常會對對象進行共享鎖鎖定。通常加共享鎖的數(shù)據(jù)頁被讀取完畢后,共享鎖就會立即被釋放。

•更新鎖(Update Lock)
更新鎖是為了防止死鎖而設(shè)立的。當(dāng)SQL Server 準(zhǔn)備更新數(shù)據(jù)時,它首先對數(shù)據(jù)對象作更新鎖鎖定,這樣數(shù)據(jù)將不能被修改,但可以讀取。等到SQL Server 確定要進行更新數(shù)據(jù)操作時,它會自動將更新鎖換為獨占鎖。但當(dāng)對象上有其它鎖存在時,無法對其作更新鎖鎖定。

(2)從程序員的角度看
鎖分為以下兩種類型:

•樂觀鎖(Optimistic Lock)
樂觀鎖假定在處理數(shù)據(jù)時,不需要在應(yīng)用程序的代碼中做任何事情就可以直接在記錄上加鎖、即完全依靠數(shù)據(jù)庫來管理鎖的工作。一般情況下,當(dāng)執(zhí)行事務(wù)處理時SQL Server會自動對事務(wù)處理范圍內(nèi)更新到的表做鎖定。

•悲觀鎖(Pessimistic Lock)
悲觀鎖對數(shù)據(jù)庫系統(tǒng)的自動管理不感冒,需要程序員直接管理數(shù)據(jù)或?qū)ο笊系募渔i處理,并負責(zé)獲取、共享和放棄正在使用的數(shù)據(jù)上的任何鎖。

您可能感興趣的文章:
  • mysql 悲觀鎖與樂觀鎖的理解及應(yīng)用分析
  • Mysql悲觀鎖和樂觀鎖的使用示例
  • thinkPHP框架樂觀鎖和悲觀鎖實例分析
  • SpringBoot整合MyBatis實現(xiàn)樂觀鎖和悲觀鎖的示例
  • 基于Django的樂觀鎖與悲觀鎖解決訂單并發(fā)問題詳解
  • 實例講解MySQL中樂觀鎖和悲觀鎖
  • Hibernate悲觀鎖和樂觀鎖實例詳解
  • Java并發(fā)問題之樂觀鎖與悲觀鎖
  • Hibernate實現(xiàn)悲觀鎖和樂觀鎖代碼介紹
  • Java中數(shù)據(jù)庫常用的兩把鎖之樂觀鎖和悲觀鎖

標(biāo)簽:呼和浩特 重慶 新鄉(xiāng) 拉薩 昭通 江蘇 貴州 上海

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淺析Sql server鎖,獨占鎖,共享鎖,更新鎖,樂觀鎖,悲觀鎖》,本文關(guān)鍵詞  淺析,Sql,server,鎖,獨占,共享,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(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)民參考!
  • 推薦文章