日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

事务基本信息

發布時間:2024/7/19 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 事务基本信息 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、事務的定義

  事務(Transaction)是由一系列對系統數據進行訪問與更新的操作所組成的一個程序執行邏輯單元(Unit),俠義上的事務特質數據庫事務。1)當多個應用程序并發訪問數據庫時,事務可以在這些應用之間提供一個隔離方法,以防止彼此的操作互相干擾。2)事務為數據庫操作序列提供了一個從失敗中恢復到正常狀態的方法,同時提供了數據庫即使在異常狀態下仍能保持數據一致性的方法。

二、事務的四個特征(ACID)

  分別是原子性(Atomicity),一致性(Consistency),隔離性(Isolation),持久性(Durability),簡稱ACID特性。

1)原子性

  事務的原子性是指事務必須是一個原子的操作序列單元。事務中包含的各項操作在一次執行過程中,只允許出現兩種狀態之一:①全部成功執行。②全部不執行。

  任何一項操作失敗都將導致整個事務失敗,同時其它已經被執行的操作都將被撤銷并回滾,只有所有的操作全部成功,整個事務才算是成功完成。

2)一致性

  事務的一致性是指事務的執行不能破環數據庫數據的完整性和一致性,一個事務在執行之前和執行之后,數據庫都必須處于一致性狀態。如果數據庫系統在運行過程中發生故障,有些事務尚未完成就被迫中斷,這些未完成的事務對數據庫所做的修改有一部分已寫入物理數據庫,這時數據庫就處于一種不正確的狀態,或者說不一致的狀態。

3)隔離性

  事務的隔離性是指在并發環境中,并發的事務是相互隔離的,一個事務的執行不能被其它事務干擾。也就是說,不同的事務并發操縱相同的數據時,每個事務都有各自完整的數據空間,即一個事務內部的操作及使用的數據對其它并發事務是隔離的,并發執行的各個事務之間不能互相干擾。

標準AQL規范中定義的4個事務隔離級別,不同的隔離級別對事務的處理不同

①未授權讀取,也被稱為讀未提交,該隔離級別允許臟讀取,其隔離級別最低。事務B可以看到事務A操作過程中的數據變化。

②授權讀取,也被成為讀已提交,只允許讀取已經被提交的數據。

③可重復讀取(Repeatable Read),就是保證在事務處理過程中,多次讀取同一個數據時,其值都和事務開始時刻是一致的。

④串行化(Serializable)是最嚴格的事務隔離級別。要求所有事務都被串行化 執行

4)持久性

  事務的持久性是指一個事務一旦提交,它對數據庫中對應數據的狀態變更就應該是永久的。

幻讀(幻影數據):指同樣的事務操作,在前后兩個時間段內執行對同一個數據項的讀取,可能出現不一致的結果。

  事務隔離級別越高,就越能保證數據的完整性和一致性,但同時對并發性能的影響也就越大。通常,對于絕大多數的應用程序來說,可以優先考慮將數據庫系統的隔離級別設置為授權讀取,這能夠在避免臟讀的同時保證較好的并發性能。盡管這種事務隔離級別會導致不可重復讀、虛讀等并發問題,但較為科學的做法是在可能出現這類問題的個別場合中,有應用程序主動采用悲觀鎖或樂觀鎖來進行事務控制。

轉載于:https://www.cnblogs.com/TheoryDance/p/7499681.html

總結

以上是生活随笔為你收集整理的事务基本信息的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。