① 資料庫中的事務是什麼
資料庫事務(簡稱:事務)是資料庫管理系統執行過程中的一個邏輯單位,由一個有限的資料庫操作序列構成。
一個資料庫事務通常包含了一個序列的對資料庫的讀/寫操作。它的存在包含有以下兩個目的:
為資料庫操作序列提供了一個從失敗中恢復到正常狀態的方法,同時提供了資料庫即使在異常狀態下仍能保持一致性的方法。
當多個應用程序在並發訪問資料庫時,可以在這些應用程序之間提供一個隔離方法,以防止彼此的操作互相干擾。
當事務被提交給了DBMS(資料庫管理系統),則DBMS(資料庫管理系統)需要確保該事務中的所有操作都成功完成且其結果被永久保存在資料庫中,如果事務中有的操作沒有成功完成,則事務中的所有操作都需要被回滾,回到事務執行前的狀態;同時,該事務對資料庫或者其他事務的執行無影響,所有的事務都好像在獨立的運行。
但在現實情況下,失敗的風險很高。在一個資料庫事務的執行過程中,有可能會遇上事務操作失敗、資料庫系統/操作系統失敗,甚至是存儲介質失敗等情況。這便需要DBMS對一個執行失敗的事務執行恢復操作,將其資料庫狀態恢復到一致狀態(數據的一致性得到保證的狀態)。為了實現將資料庫狀態恢復到一致狀態的功能,DBMS通常需要維護事務日誌以追蹤事務中所有影響資料庫數據的操作。
② 資料庫事務具體是
資料庫事務(Database Transaction) ,是指作為單個邏輯工作單元執行的一系列操作,要麼完全地執行,要麼完全地不執行。
原子性(Atomic)(Atomicity) 事務必須是原子工作單元;對於其數據修改,要麼全都執行,要麼全都不執行。通常,與某個事務關聯的操作具有共同的目標,並且是相互依賴的。如果系統只執行這些操作的一個子集,則可能會破壞事務的總體目標。原子性消除了系統處理操作子集的可能性。
一致性(Consistent)(Consistency) 事務在完成時,必須使所有的數據都保持一致狀態。在相關資料庫中,所有規則都必須應用於事務的修改,以保持所有數據的完整性。事務結束時,所有的內部數據結構(如 B 樹索引或雙向鏈表)都必須是正確的。某些維護一致性的責任由應用程序開發人員承擔,他們必須確保應用程序已強制所有已知的完整性約束。如,當開發用於轉賬的應用程序時,應避免在轉賬過程中任意移動小數點。隔離性(Insulation)(Isolation) 由並發事務所作的修改必須與任何其它並發事務所作的修改隔離。事務查看數據時數據所處的狀態,要麼是另一並發事務修改它之前的狀態,要麼是另一事務修改它之後的狀態,事務不會查看中間狀態的數據。這稱為隔離性,因為它能夠重新裝載起始數據,並且重播一系列事務,以使數據結束時的狀態與原始事務執行的狀態相同。當事務可序列化時將獲得最高的隔離級別。在此級別上,從一組可並行執行的事務獲得的結果與通過連續運行每個事務所獲得的結果相同。由於高度隔離會限制可並行執行的事務數,所以一些應用程序降低隔離級別以換取更大的吞吐量。持久性(Duration)(Durability) 事務完成之後,它對於系統的影響是永久性的。該修改即使出現致命的系統故障也將一直保持。
③ 資料庫中什麼叫事務其特點是什麼
【事務】:是用戶定義的一個資料庫操作序列,這些操作要麼都做,要麼都不做,是一個不回可分割的工作單位。
在關答系資料庫中,一個事務可以是一條SQL語句,也可以是多條SQL語句。
【特點】:
原子性、一致性、隔離性、持續性
【舉個例子】
假設,定義了一個銀行轉賬的事務,以兩個銀行賬號裡面的金錢為例,裡面的錢要麼一個增加多少,一個減少多少,要麼就是都不增不減,不可能一個多但另一個不減少,你懂得。。。。
希望可以幫你o(∩_∩)o
④ 資料庫中的事務是什麼
只有這樣才能成為一個事務:原子性事務必須是原子工作單元;對於其數據修改,要麼全內都執行,要麼全容都不執行。
一致性事務在完成時,必須使所有的數據都保持一致狀態。在相關資料庫中,所有規則都必須應用於事務的修改,以保持所有數據的完整性。
事務結束時,所有的內部數據結構(如
b
樹索引或雙向鏈表)都必須是正確的。
隔離性由並發事務所作的修改必須與任何其它並發事務所作的修改隔離。事務查看數據時數據所處的狀態,要麼是另一並發事務修改它之前的狀態,
要麼是另一事務修改它之後的狀態,事務不會查看中間狀態的數據。這稱為可串列性,因為它能夠重新裝載起始數據,
並且重播一系列事務,以使數據結束時的狀態與原始事務執行的狀態相同。
持久性事務完成之後,它對於系統的影響是永久性的。該修改即使出現系統故障也將一直保持。
⑤ 關系資料庫事務有哪些特性
事務的:原子性、一致性、分離性、持久性
原子性、一致性、分離性、持久性(1) 原子性 事務的原子性指的是,事務中包含的程序作為資料庫的邏輯工作單位,它所做的對數據修改操作要麼全部執行,要麼完全不執行。這種特性稱為原子性。
事務的原子性要求,如果把一個事務可看作是一個程序,它要麼完整的被執行,要麼完全不執行。就是說事務的操縱序列或者完全應用到資料庫或者完全不影響資料庫。這種特性稱為原子性。
假如用戶在一個事務內完成了對資料庫的更新,這時所有的更新對外部世界必須是可見的,或者完全沒有更新。前者稱事務已提交,後者稱事務撤消(或流產)。DBMS必須確保由成功提交的事務完成的所有操縱在資料庫內有完全的反映,而失敗的事務對資料庫完全沒有影響。
(2) 一致性事務的一致性指的是在一個事務執行之前和執行之後資料庫都必須處於一致性狀態。這種特性稱為事務的一致性。假如資料庫的狀態滿足所有的完整性約束,就說該資料庫是一致的。
一致性處理資料庫中對所有語義約束的保護。假如資料庫的狀態滿足所有的完整性約束,就說該資料庫是一致的。例如,當資料庫處於一致性狀態S1時,對資料庫執行一個事務,在事務執行期間假定資料庫的狀態是不一致的,當事務執行結束時,資料庫處在一致性狀態S2。
(3) 分離性分離性指並發的事務是相互隔離的。即一個事務內部的操作及正在操作的數據必須封鎖起來,不被其它企圖進行修改的事務看到。
分離性是DBMS針對並發事務間的沖突提供的安全保證。DBMS可以通過加鎖在並發執行的事務間提供不同級別的分離。假如並發交叉執行的事務沒有任何控制,操縱相同的共享對象的多個並發事務的執行可能引起異常情況。
DBMS可以在並發執行的事務間提供不同級別的分離。分離的級別和並發事務的吞吐量之間存在反比關系。較多事務的可分離性可能會帶來較高的沖突和較多的事務流產。流產的事務要消耗資源,這些資源必須要重新被訪問。因此,確保高分離級別的DBMS需要更多的開銷。
(4)持久性持久性意味著當系統或介質發生故障時,確保已提交事務的更新不能丟失。即一旦一個事務提交,DBMS保證它對資料庫中數據的改變應該是永久性的,耐得住任何系統故障。持久性通過資料庫備份和恢復來保證。
持久性意味著當系統或介質發生故障時,確保已提交事務的更新不能丟失。即對已提交事務的更新能恢復。一旦一個事務被提交,DBMS必須保證提供適當的冗餘,使其耐得住系統的故障。
⑥ 關系資料庫事務的特性是什麼
關系資料庫事務(DatabaseTransaction)是指一個可以包含多個步驟來完成所需要的任務的工作單元。通過事務將一系列不可分割的資料庫操作作為一個整體來執行,從而保證了資料庫的完整性和有效性。其包含了一組資料庫操作命令的一個操作序列,事務中所有命令作為一個整體向系統提交或撤銷操作請求(要麼完全執行,要麼完全不執行,即資料庫命令系列要麼都成功,要麼都不成功)。
2.1.1事務特性資料庫事務必須具備ACID特性,一個邏輯工作單元要成為事務,必須滿足ACID屬性。
ACID是指Atomicity(原子性)、Consistency(一致性)、Isolation(隔離性)和Durability(持久性)。事務由資料庫管理系統(DBMS)中的事務管理子系統負責處理。
1.原子性原子性指的是一個事務(Transaction)中的所有操作,要麼全部完成,要麼全部不完成,不會結束在中間某個環節。事務在執行過程中發生錯誤,會被回滾(Rollback)到事務開始前的狀態,就像這個事務從來沒有執行過一樣。
2.一致性一致性指的是在一個事務執行之前和執行之後資料庫都必須處於一致性狀態。如果事務成功完成,那麼系統中所有變化將正確地應用,系統處於有效狀態。如果在事務中出現錯誤,那麼系統中的所有變化將自動地回滾,系統返回到原始狀態。
3.隔離性隔離性指的是在並發環境中,當不同的事務同時操縱相同的數據時,每個事務都有各自的完整數據空間。由並發事務所做的修改必須與任何其他並發事務所做的修改隔離。事務查看數據更新時,數據所處的狀態要麼是另一事務修改它之前的狀態,要麼是另一事務修改它之後的狀態,事務不會查看到中間狀態的數據。
4.持久性持久性指的是只要事務成功結束,它對資料庫所做的更新就必須永久地保存下來。即使發生系統崩潰,重新啟動資料庫系統後,資料庫還能恢復到事務成功結束時的狀態。