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

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

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

    隨筆-95  評論-31  文章-10  trackbacks-0
    事物ACID特性

    A:atomicity 原子性
    C:consistency 一致性
    I:isolation 隔離性 多個事物可以獨立運行,而不會彼此產生影響。也即可并發(fā)執(zhí)行
    D:durability 持久性

    并發(fā)事物:T1新增一條記錄,但是沒有commit,此時T2事物開始查詢,但結果并不包含T1新增記錄,只有T1執(zhí)行commit,此時T2事物再次查詢才能看到T1新增記錄

    事物鎖:T1事物修改一行記錄,但是沒有commit,此時T1對該行“加鎖”了,T2事物若試圖update該條記錄,必須等待T1提交commit釋放鎖后才能執(zhí)行。

    結論:讀程序不會阻塞讀程序、寫程序不會阻塞讀程序、只有在試圖對相同的行進行修改時,寫程序才會阻塞寫程序。

    聯想代碼中的service層、每個方法spring默認開啟事物,可以并發(fā)執(zhí)行,只有兩個service方法中的dao方法同時修改一行記錄時候,這兩個方法就會阻塞等待其中一方釋放事物鎖,如果一方執(zhí)行很慢,另外一方就會阻塞等待。


    事物隔離級別:
    1、幻象讀取:T1讀取結果集,T2新增一條記錄滿足T1讀取的結果集,T1再次讀取結果集,此時看到了T2新增的一條記錄,這個新行就叫“幻象”
    2、不可重復讀:T1讀取一行記錄,T2修改了該條記錄,T1再次讀取這行記錄,發(fā)現結果不同了,這個現象就叫“不可重復讀”
    3、臟讀:T1更新一行記錄,但是沒有提交修改,此時T2讀取該行記錄,然后T1執(zhí)行回滾操作,取消剛才的修改,現在T2讀取的行就無效了稱之為“臟數據”也即臟讀。

    SQL標準定義以下幾種事物隔離級別
    1、READ UNCOMMITTED 幻象讀、不可重復讀、臟讀都允許
    2、READ COMMITTED 允許幻象讀、不可重復讀、但不允許臟讀
    3、REPEATABLE READ 允許幻象讀、但是不允許不可重復讀和臟讀
    4、SERIALIZABLE 幻影讀、不可重復讀和臟讀都不允許

    oracle默認READ COMMITTED


    posted on 2014-07-17 14:06 朔望魔刃 閱讀(343) 評論(0)  編輯  收藏 所屬分類: java
    主站蜘蛛池模板: 日本成人在线免费观看| 亚洲成人免费电影| 免费少妇a级毛片人成网| 亚洲中文字幕AV每天更新| 一二三四免费观看在线视频中文版| 亚洲视频中文字幕在线| 国产成人免费在线| 亚洲国产午夜电影在线入口| 日本免费人成在线网站| 2020久久精品亚洲热综合一本| 一个人看www在线高清免费看| 在线观看日本亚洲一区| 国产精品无码素人福利免费| 日韩一级片免费观看| 亚洲一区AV无码少妇电影☆| 99在线视频免费观看| 亚洲va在线va天堂va四虎| 亚洲精品国产免费| 中文字幕亚洲综合久久综合| 日本一区免费电影| 国产日韩在线视频免费播放| 亚洲av日韩综合一区在线观看| 国产免费的野战视频| 亚洲av无码偷拍在线观看| 亚洲性在线看高清h片| 美女在线视频观看影院免费天天看| 亚洲国产综合91精品麻豆| 我们的2018在线观看免费高清 | 西西人体免费视频| 亚洲卡一卡2卡三卡4卡无卡三| 91热成人精品国产免费| mm1313亚洲国产精品无码试看| 亚洲国产电影av在线网址| 色播在线永久免费视频网站| 亚洲精品白色在线发布| 成人免费午夜视频| 和老外3p爽粗大免费视频| 2022年亚洲午夜一区二区福利 | 亚洲91av视频| 四虎影院免费视频| 久久久久久国产a免费观看不卡 |