国产精品99久久-国产精品99久久99久久久看片-国产精品99久久久-国产精品99久久久久久www-一级黄色录像大片-一级黄色录像毛片

歡迎您訪問鄭州興邦電子股份有限公司官方網站!
阿里巴巴誠信通企業
全國咨詢熱線:40000-63966
興邦電子,中國水控機第一品牌

聯系興邦電子

全國咨詢熱線:40000-63966

工廠:河南省 鄭州市 高新區蓮花街電子電器產業園

數據庫鎖機制

文章出處:http://www.veloe.cn 作者:興邦開發部 人氣: 發表時間:2016年05月28日

[文章內容簡介]:數據庫鎖機制

數據庫是一個多用戶使用的共享資源。當多個用戶并發地存取數據時,在數據庫中就會產生多個事務同時存取同一數據的情況。若對并發操作不加控制就可能會讀取和存儲不正確的數據,破壞數據庫的一致性。

加鎖是實現數據庫并發控制的一個非常重要的技術。當事務在對某個數據對象進行操作前,先向系統發出請求,對其加鎖。加鎖后事務就對該數據對象有了一定的控制,在該事務釋放鎖之前,其他的事務不能對此數據對象進行更新操作。
鎖包括行級鎖和表級鎖

行級鎖是一種排他鎖,防止其他事務修改此行;在使用以下語句時,Oracle會自動應用行級鎖:
INSERT、UPDATE、DELETE、SELECT … FOR UPDATE [OF columns] [WAIT n | NOWAIT];
SELECT … FOR UPDATE語句允許用戶一次鎖定多條記錄進行更新
使用COMMIT或ROLLBACK語句釋放鎖

表級鎖又分為5類:

行共享 (ROW SHARE) – 禁止排他鎖定表
行排他(ROW EXCLUSIVE) – 禁止使用排他鎖和共享鎖
共享鎖(SHARE) - 鎖定表,對記錄只讀不寫,多個用戶可以同時在同一個表上應用此鎖
共享行排他(SHARE ROW EXCLUSIVE) – 比共享鎖更多的限制,禁止使用共享鎖及更高的鎖
排他(EXCLUSIVE) – 限制最強的表鎖,僅允許其他用戶查詢該表的行。禁止修改和鎖定表

【樂觀鎖與悲觀鎖】

所謂悲觀鎖就是基于數據庫機制實現的。比如在在使用select子句的時候加上for update,那么直到改子句的事務結束為止,任何應用都無法修改select出來的記錄。

所謂樂觀鎖是基于應用的版本機制來實現的。一般會在表里面設計一個版本字段v(我一般會把這個字段設為timestamp)。一般的update場景是這樣:

1 select a, v from tb where id=1;  

假設得到數據是:['xxx', 11111]

2 update tb set a='yyyy', v=systimestamp where v=11111; //注意, v一般不會在業務操作的時候修改

這要求每一次update操作都變更版本字段,否則還是要進程間的數據 還是會被相互覆蓋。

樂觀鎖無法鎖定其他應用對數據的操作。

鎖(locking)

業務邏輯的實現過程中,往往需要保證數據訪問的排他性。如在金融系統的日終結算 處理中,我們希望針對某個cut-off時間點的數據進行處理,而不希望在結算進行過程中 (可能是幾秒種,也可能是幾個小時),數據再發生變化。此時,我們就需要通過一些機制來保證這些數據在某個操作過程中不會被外界修改,這樣的機制,在這里,也就是所謂 的“鎖”,即給我們選定的目標數據上鎖,使其無法被其他程序修改。 Hibernate支持兩種鎖機制:即通常所說的“悲觀鎖(Pessimistic Locking)” 和“樂觀鎖(Optimistic Locking)”。

本文關鍵詞:一卡通,數據庫,鎖
上一篇:數據庫事務的隔離級別[ 05-28 ] 下一篇:開放系統參考模型網絡模型[ 05-28 ]
回到頂部
主站蜘蛛池模板: 男女午夜性爽快免费视频不卡| a级毛片免费看| 九九精品激情在线视频| 欧美乱一级在线观看| 亚洲高清一区二区三区| 91四虎国自产在线播放线| 国产一及毛片| 免费在线观看亚洲| 欧美日韩在线视频不卡一区二区三区| 国产成人精品免费视频大全五级 | 欧美一级毛片免费大全| 亚洲国产欧美在线人成aaa| 亚洲成在线| 亚洲欧美日韩另类在线| 在线视频一区二区三区| mm在线精品视频| 成年人在线视频| 国产黄色三级| 国产情侣普通话刺激对白| 精品性久久| 精品国产三级在线观看| 牛人盗摄一区二区三区视频| 男女男精品视频在线播放| 久草在线国产视频| 精品视频一二三区| 国产精品久久久久亚洲| 成人在线黄色| 成人国产精品一级毛片了| 一区二三区国产| 亚洲一区二区三区影院| 一本色道久久综合狠狠躁| 手机看片自拍日韩日韩高清| 日韩亚洲欧美一区| 日本三级日产三级国产三级| 日本尹人综合香蕉在线观看| 牛牛本精品99久久精品88m| 免费一级欧美大片在线观看| 欧美a一| 久久精品视频99| 精品久久久视频| 国产成人精品微拍视频|