鎖有兩種:悲觀鎖和樂(lè)觀鎖。悲觀鎖假定其他用戶(hù)企圖訪(fǎng)問(wèn)或者改變你正在訪(fǎng)問(wèn)、更改的對(duì)象的概率是很高的,因此在悲觀鎖的環(huán)境中,在你開(kāi)始改變此對(duì)象之前就將該對(duì)象鎖住,并且直到你提交了所作的更改之后才釋放鎖。悲觀的缺陷是不論是頁(yè)鎖還是行鎖,加鎖的時(shí)間可能會(huì)很長(zhǎng),這樣可能會(huì)長(zhǎng)時(shí)間的限制其他用戶(hù)的訪(fǎng)問(wèn),也就是說(shuō)悲觀鎖的并發(fā)訪(fǎng)問(wèn)性不好。與悲觀鎖相反,樂(lè)觀鎖則認(rèn)為其他用戶(hù)企圖改變你正在更改的對(duì)象的概率是很小的,因此樂(lè)觀鎖直到你準(zhǔn)備提交所作的更改時(shí)才將對(duì)象鎖住,當(dāng)你讀取以及改變?cè)搶?duì)象時(shí)并不加鎖。可見(jiàn)樂(lè)觀鎖加鎖的時(shí)間要比悲觀鎖短,樂(lè)觀鎖可以用較大的鎖粒度獲得較好的并發(fā)訪(fǎng)問(wèn)性能。但是如果第二個(gè)用戶(hù)恰好在第一個(gè)用戶(hù)提交更改之前讀取了該對(duì)象,那么當(dāng)他完成了自己的更改進(jìn)行提交時(shí),數(shù)據(jù)庫(kù)就會(huì)發(fā)現(xiàn)該對(duì)象已經(jīng)變化了,這樣,第二個(gè)用戶(hù)不得不重新讀取該對(duì)象并作出更改。這說(shuō)明在樂(lè)觀鎖環(huán)境中,會(huì)增加并發(fā)用戶(hù)讀取對(duì)象的次數(shù)。