久久机这里只有精品,国产69精品一区二区亚洲孕妇,91精品国产综合久久婷婷香蕉,午夜久久久久久电影

最新活動:電腦PC端+手機端+微網站+自適應網頁多模板選擇-建站388元起價?。?!
當前位置:主頁 > 網站建設 > oracle 數據庫隔離級別學習建站知識

oracle 數據庫隔離級別學習建站知識

時間:2023-05-22 10:05:22 閱讀: 文章分類: 網站建設 作者: 建站小能手

導讀:1建站知識這篇文章主要介紹了oracle數據庫的隔離級別相關的知識,數據庫操作的隔離級別,有需要的朋友可以參考下網站建設網站seo優化課程。

網站建設網站seo優化課程oracle 事務隔離級別 事務不同引發的狀況: 臟讀(Dirty reads) 一個事務讀取另一個事務尚未提交的修改時,產生臟讀 很多數據庫允許臟讀以避免排它鎖的競爭。 不可重復讀(Nonrepeatable reads) 同一查詢在同一事務中多次進行,由于其他提交事務所做的修改或刪除,每次返回不同的結果集,此時發生非重復讀。 幻讀(Phantom reads) 同一查詢在同一事務中多次進行,由于其他提交事務所做的插入操作,每次返回不同的結果集,此時發生幻像讀。 數據庫操作的隔離級別 未提交讀(read uncommitted) 提交讀(read committed) 重復讀(repeatable read) 序列化(serializable) oracle默認隔離級別read committed (statement level serialization) 每一個語句,在語句開始時,會獲取一個此刻的數據快照。 一個事務有多條語句,如果語句之間存在其它完成的事務,這可能引起不可持續讀和幻讀。 新建一個測試表books: name,code,price三個字段 添加兩條測試數據

使用pl/sql和java程序模擬并發不允許臟讀測試: 程序段首先查詢code是qqq的書的價格

復制代碼 代碼如下:

//獲取連接 省略  pstat = conn.prepareStatement("select price from books where code='qqq'");  rs = pstat.executeQuery();  while(rs.next()){    System.out.println("price:"+rs.getDouble(1));  }  close();

輸出結果:price:15.0 然后pl/sql執行更新

復制代碼 代碼如下:

update books set price=18 where code='qqq';

!pl/sql設置成手動更新,不自動更新 在執行上面java查詢代碼 輸出仍是price:15.0,說明讀不到pl/sql中未提交的執行結果,即不允許臟讀 pl/sql 執行commit;

在執行java查詢: 輸出結果:price:18.0

會有不可重復讀何幻讀的現象發生就不用測試了吧, 這兩種現象都是針對提交后事物的讀引起的,read commited隔離級別是允許對提交后 的事物進行讀的。

隔離級別:重復讀(repeatable read) 這個不允許臟讀,不可重復讀,但是會有幻讀現象。 這個oracle不支持,不好測試。 理解的話就是如果一條查詢語句查詢的內容有其它事物正在更新的時候,這 查詢處于等待狀態,直到先前事物提交更新后,才會執行本條查詢。也就是 查詢的時候也會有鎖,需要等待并發的事物釋放鎖。然后自己獲取到鎖,執行 自己事物。這樣查詢也加鎖,并發性更低 select ... for update 就是這樣可以避免不可重復讀的發生

隔離級別:serializable 這個就更嚴格了,事物執行是一個一個的。一個事務中的語句共享同一個數據網站建設多少錢快照(在事務開始時存在的數據)。是事物級別的,臟讀,不可重復讀,幻讀根本就沒有機會發生。 前面像read committed都是語句級別的,以語句為單元。 比如 read committed一個事物A有a(select),b(select),c(update)三條語句

關鍵詞標簽: 標簽 級別

聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-22 ,文章oracle 數據庫隔離級別學習建站知識主要講述級別,標簽,oracle 數據庫隔離級別學習建站知識1網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_4420.html

我的IDC 網站建設技術SEOUC.COM
專注網站建設,SEO優化,小程序設計制作搭建開發定制網站等,數千家網站定制開發案例,網站推廣技術服務。
  • 5000+合作客服
  • 8年從業經驗
  • 150+覆蓋行業
  • 最新熱門源碼技術文章

    主站蜘蛛池模板: 灌阳县| 平山县| 定边县| 汶上县| 称多县| 元谋县| 宁南县| 定结县| 商洛市| 淮南市| 抚远县| 乌苏市| 桂阳县| 昌吉市| 大埔县| 灵台县| 乌兰浩特市| 清水河县| 宁城县| 济宁市| 赞皇县| 荣成市| 灌云县| 桃江县| 甘德县| 民和| 白水县| 临猗县| 柳林县| 柳河县| 巴彦县| 阜新市| 奈曼旗| 怀安县| 南开区| 曲靖市| 佛山市| 读书| 岳普湖县| 南郑县| 卓资县|