事務和鎖--查看數據庫中的鎖

數據庫加鎖是修改哪一條加鎖,仍是在頁上加鎖,仍是在表上加鎖,數據庫來決定數據庫

若是你更改的是兩條記錄,就在兩條記錄上加鎖,若是你更改的是不少條,這個時候數據庫一看一條一條加鎖太麻煩,給整個頁加鎖更省事,或者給整個表加鎖更加省事併發

加鎖的級別越大,數據庫越省事,數據庫越省事,併發性越差,修改一條記錄若是給表加上獨佔鎖,那麼想查詢別的記錄都查詢不了了spa

加鎖的對象越小,併發性越好3d

加的鎖對象越大,併發性越差對象

剛開始就這幾個鎖blog

 

一、開啓事務修改學生的名字,給學號爲0000000001的學生姓名加個‘_01’,事務不提交事務

 

 

二、看到給Student表上的這1行加了獨佔鎖
ObjId:2105058535表示是Student這張表
Type:RID表示是行標識
Resource:1:567:0,表示是第1個數據文件的第576頁的第1行
Mode:X表示獨佔鎖
im

因此以下圖查詢學號爲0000000001的學生,由於這行數據加了獨佔鎖,因此一直查詢不出來d3

 

可是以下圖查詢學號不爲0000000001的學生,就能夠查詢出來數據了,由於其餘行並無鎖數據

三、開啓事務修改學生的名字,給學號對2取餘等於0的這1批學生姓名加個_01,事務不提交

 

四、看到給Student表加了獨佔鎖
ObjId:2105058535表示是Student這張表
Type:TAB表示是表
Mode:X表示獨佔鎖

 以下圖查詢學號不爲0000000001的學生或者查詢任何數據,由於這個表加了獨佔鎖,因此都不會查詢出來

相關文章
相關標籤/搜索