PyMySQL核心操作之事務

2021-10-24 04:06:42 字數 797 閱讀 9683

事務:是一套完整的業務邏輯,在這套業務邏輯中可能包含多天sql語句,這些sql語句要麼都成功,要麼都失敗

舉例:張三給李四轉賬100元。

原子性(atomicity): 事務中包含的操作被看做乙個邏輯單元,這個邏輯單元中的操作要麼全部成功,要麼全部失敗

一致性(consistency):事務的結果保留不變,即事務的執行並不改變資料的一致性

隔離性(isolation):又稱孤立性,事務的中間狀態對其它事務是不可見的

永續性(durability):指乙個事務一旦提交成功,它對資料庫中資料的改變就應該是永久性的

需求:先往 t_book 表插入書的資訊,然後向 t_hero 插入該書主角的資訊,要求,要麼都成功,要麼都失敗

核心知識點: 事務的實現(通用模板)

事務操作需要使用try控制分支使用if else不可以

try

: sql1 =

"***x"

cursor.execute(sql1)

sql2 =

"yyy"

cursor.execute(sql2)

conn.commit(

)# 事務提交

except exception as e:

conn.rollback(

)# 事務回滾

finally

:# 5.釋放資源

cursor.close(

) conn.close(

)

Spring核心之事務管理

事務的特性 併發事務帶來的問題 隔離級別 在mysql常用的儲存引擎中,只有innodb支援事務,所以這裡說的隔離級別指的是innodb下的事務隔離級別.隔離級別 讀資料一致性 更新丟失 髒讀不可重複讀 幻讀讀未提交 最低級別,只能保證不讀取物理上損壞的資料 讀已提交 語句級 可重複讀 事務級 可序...

併發之事務隔離

資料庫帶來的併發問題包括 1 丟失更新 2 髒讀 3 非重複讀 4 覆蓋更新 5 幻象讀 撤銷乙個事務時,把其他事務已提交的更新資料覆蓋 a和 b事務併發執行,a事務執行更新後,提交 b事務在 a事務更新後,b事務結束前也做了對該行資料的更新操作,然後回滾,則兩次更新操作都丟失了 乙個事務讀到另乙個...

SQLServer之事務簡介

事務是單個的工作單元。事務是在資料庫上按照一定的邏輯順序執行的任務序列,既可以由使用者手動執行,也可以由某種資料庫程式自動執行。每條單獨的語句都是乙個事務。在自動提交模式下,每個資料庫操作是在執行時已提交的事務。此模式適合用於包含單個 sql 語句的許多實際的事務。不需要分隔,或者指定的這些事務完成...