<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    朱杰兵blog

    jonhney'blog
    posts - 140, comments - 1, trackbacks - 0, articles - 0

    不可重復讀和幻讀的區別

    Posted on 2015-06-02 09:11 朱杰兵 閱讀(228) 評論(0)  編輯  收藏

    不可重復讀

    不可重復讀的重點是修改:

    同樣的條件, 你讀取過的數據, 再次讀取出來發現值不一樣了

    例子:

    在事務1中,Mary 讀取了自己的工資為1000,操作并沒有完成 

    Java代碼  收藏代碼
    1. con1 = getConnection();  
    2. select salary from employee empId ="Mary";  


    在事務2中,這時財務人員修改了Mary的工資為2000,并提交了事務. 
    Java代碼  收藏代碼
    1. con2 = getConnection();  
    2. update employee set salary = 2000;  
    3. con2.commit();  


    在事務1中,Mary 再次讀取自己的工資時,工資變為了2000 
    Java代碼  收藏代碼
    1. //con1  
    2. select salary from employee empId ="Mary";  


    在一個事務中前后兩次讀取的結果并不致,導致了不可重復讀。


    幻讀

    幻讀的重點在于新增或者刪除

    同樣的條件, 第1次和第2次讀出來的記錄數不一樣

    例子:

    目前工資為1000的員工有10人。 
    事務1,讀取所有工資為1000的員工。 

    Java代碼  收藏代碼
    1. con1 = getConnection();  
    2. Select * from employee where salary =1000;  
    共讀取10條記錄 

    這時另一個事務向employee表插入了一條員工記錄,工資也為1000 
    Java代碼  收藏代碼
    1. con2 = getConnection();  
    2. Insert into employee(empId,salary) values("Lili",1000);  
    3. con2.commit();  


    事務1再次讀取所有工資為1000的員工 
    Java代碼  收藏代碼
    1. //con1  
    2. select * from employee where salary =1000;  


    共讀取到了11條記錄,這就產生了幻像讀。

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲性色精品一区二区在线| 亚洲五月激情综合图片区| 精品久久久久久亚洲精品| 十九岁在线观看免费完整版电影| 久久精品国产亚洲网站| 国产无遮挡又黄又爽免费网站| 在线观看国产区亚洲一区成人 | 亚洲综合在线成人一区| 久久永久免费人妻精品| 久久久亚洲欧洲日产国码aⅴ| 日本一区二区免费看| 亚洲天天做日日做天天欢毛片| 亚洲欧洲免费视频| 亚洲精品网站在线观看你懂的| 日韩a级毛片免费视频| 视频免费1区二区三区| 亚洲伊人久久大香线蕉综合图片| 国产性生大片免费观看性| 久久久影院亚洲精品| 中文字幕免费高清视频| 亚洲成a人片在线看| 免费v片在线观看无遮挡| AAAAA级少妇高潮大片免费看| 久久亚洲综合色一区二区三区| 四虎成人精品永久免费AV| 亚洲a视频在线观看| 国产男女猛烈无遮挡免费网站| 五月天婷婷精品免费视频| 亚洲s色大片在线观看| 国产99视频精品免费观看7| 免费精品久久久久久中文字幕| 亚洲成a人片在线观看日本| 日日麻批免费40分钟日本的| 亚洲精品国产综合久久久久紧| 亚洲精品无码久久毛片| 久久久久久国产精品免费无码| 亚洲中文字幕无码久久| 久久99国产亚洲高清观看首页| AA免费观看的1000部电影| 一区二区三区免费在线视频 | 色一情一乱一伦一视频免费看|