事務是什麼 幹什麼用

2021-09-25 10:48:18 字數 1778 閱讀 2215

事務指的是邏輯上的一組操作,組成這組操作的各個單元要麼全都成功,要麼全都失敗.
- 原子性(atomicity)原子性是指事務是乙個不可分割的工作單位,事務中的操作要麼都發生,要麼都不發生。 保證在乙個事務中多次sql操作要麼全都成功,要麼全都失敗.

- 一致性(consistency)事務前後資料的完整性必須保持一致。

- 隔離性(isolation)事務的隔離性是指多個使用者併發訪問資料庫時,乙個使用者的事務不能被其它使用者的事務所干擾,多個併發事務之間資料要相互隔離。

- 永續性(durability)永續性是指乙個事務一旦被提交,它對資料庫中資料的改變就是永久性的,接下來即使資料庫發生故障也不應該對其有任何影響。

sql語句

描述start transaction

開啟事務

commit

提交事務

rollback

回滾事務

connection 物件的方法名

描述conn.setautocommit(false)

開啟事務

conn.commit()

提交事務

conn.rollback()

回滾事務

connection物件的方法名

描述conn.setautocommit(false)

開啟事務

new queryrunner()

建立核心類,不設定資料來源(手動管理連線)

query(conn , sql , handler, params ) 或

update(conn, sql , params)

手動傳遞連線, 執行sql語句crud

dbutils.commitandclosequietly(conn)

提交並關閉連線,不拋異常

dbutils.rollbackandclosequietly(conn)

回滾並關閉連線,不拋異常

read uncommitted讀未提交,乙個事務讀到另乙個事務沒有提交的資料。

a)存在:3個問題(髒讀、不可重複讀、虛讀)。

b)解決:0個問題

read committed讀已提交,乙個事務讀到另乙個事務已經提交的資料。

a)存在:2個問題(不可重複讀、虛讀)。

b)解決:1個問題(髒讀)

repeatable read:可重複讀,在乙個事務中讀到的資料始終保持一致,無論另乙個事務是否提交。

a)存在:1個問題(虛讀)。

b)解決:2個問題(髒讀、不可重複讀)

serializable序列化,同時只能執行乙個事務,相當於事務中的單執行緒。

a)存在:0個問題。

b)解決:3個問題(髒讀、不可重複讀、虛讀)

常見資料庫的預設隔離級別:

事務存在3中併發訪問問題。

1. 髒讀:乙個事務讀到了另乙個事務未提交的資料.

2. 不可重複讀:乙個事務讀到了另乙個事務已經提交(update)的資料。引發另乙個事務,在事務中的多次查詢結果不一致。

3. 虛讀 /幻讀:乙個事務讀到了另乙個事務已經提交(insert)的資料。導致另乙個事務,在事務中多次查詢的結果不一致。

STL是什麼?幹什麼用的?

stl是standard template library的簡稱,標準模板庫。是什麼?是一套功能強大的 c 模板類。幹什麼用?提供了通用的模板類和函式,這些模板類和函式可以 實現多種流行和常用的演算法和資料結構,如向量 鍊錶 佇列 棧。stl可分為容器 containers 迭代器 iterator...

Nginx的是什麼?幹什麼用的?

沒有聽過nginx?那麼一定聽過它的 同行 apache吧!nginx同apache一樣都是一種web伺服器。基於rest架構風格,以統一資源描述符 uniform resources identifier uri或者統一資源定位符 uniform resources locator url作為溝通...

電腦硬碟是幹什麼用的 電腦硬碟是什麼幹什麼用的

在所有的電腦元件中,硬碟就是用來儲存我們平時安裝的軟體 電影 遊戲 等的乙個資料容器。在一台電腦中,硬碟的作用僅次於cpu和記憶體。它的主要功能是儲存作業系統 程式以及資料。隨著it產業不斷發展,電腦硬碟的體積和容量公升級換代的速度都相當的快。由於電腦配件更新速度的提高,出現了大量的二手硬體,二手硬...