-
事務的使用是否影響效能。
MySQL的事務支援與MySQL伺服器本身無關,而是與儲存引擎有關:不支援事務,用於唯讀程式以提高效能:ACID事務,行級鎖,併發DB:支援事務。
事務是一組連續的資料庫操作,就好像它是乙個工作單元一樣。 換句話說,除非組內的每個單獨操作都成功,否則它永遠不會是乙個完整的事務。 如果事務中的任何操作失敗,則整個事務將失敗。
-
首先,讓我們看一下 student 表中的資料。
輸入 start transaction 以啟動交易。
更新第一行資料和資料,然後讓奈讓檢查結果,發現更新成功。
注意,回滾從這裡開始。 輸入回滾但是,如果檢視每畝租後第一行的資料,可以發現以前的資料已經隨著新資料變回了。
最後,我們看一下整個表,發現它仍然和以前一樣。
-
什麼是交易?
MySQL事務主要用於處理操作量大、複雜度高的資料。 例如,在人事管理系統中,如果刪除乙個人,不僅需要刪除該人的基本資訊,還需要刪除與該人相關的資訊,如郵箱、文章等,這樣這些資料庫操作語句就構成了乙個交易!
在MySQL中,只有使用INNODB資料庫引擎的資料庫或表才支援事務。
事務可用於維護資料庫的完整性,確保批量執行 SQL 語句或全部執行。
事務用於管理插入、更新和刪除語句。
一般來說,事務必須滿足四個條件(酸):原子性(或不可分割性)、一致性(一致性)、隔離性(也稱為獨立性)和永續性(永續性)。
原子性:事務中的所有操作要麼已完成,要麼未完成,並且不會在中間結束。 如果在事務執行過程中發生錯誤,它將回滾到事務開始前的狀態,就好像事務從未執行過一樣。
一致性:在事務結束之前和之後,資料庫的完整性不會受到損害。 這意味著寫入的資料必須完全符合所有預設規則,包括資料的準確性、資料的串聯以及後續資料庫自發完成預定工作的能力。
隔離:資料庫允許多個併發事務同時讀取、寫入和修改其資料的能力,從而防止在併發執行多個事務時因交叉執行而導致的資料不一致。 事務隔離有不同級別,包括讀取未提交、讀取提交、可重複讀取和可序列化。
永續性:事務完成後,對資料的修改是永久性的,即使系統出現故障也不會丟失。
預設情況下,事務是自動提交的,即在執行 SQL 語句後立即執行提交操作。 因此,要顯式開啟事務,必須使用命令 begin 或 start transaction,或執行命令 set autocommit=0 以禁用當前會話的自動提交。
來自 Sloth Academy - 一站式資料知識平台。
-
事務中有多個操作。
它必須一起完成,或者根本不做。
如果由於任何原因無法完成操作,則已完成的內容將被回滾。
-
事務處理在各種管理系統中有著廣泛的應用,如人事管理系統,許多同步資料庫操作都需要事務處理。 例如,在人事管理系統中,如果刪除乙個人,就需要刪除該人的基本資訊,還要刪除與該人相關的資訊,如郵箱、文章等,這樣這些資料庫操作語句就構成了乙個交易! 刪除了 SQL 語句。
delete from userinfo where ~~
delete from mail where ~~
delete from article where~~
如果沒有交易,在你刪除的過程中,假設出了什麼問題,只執行了第一句話,那麼後果是難以想象的!
但是通過交易。 如果出現刪除錯誤,可以通過簡單地回滾來取消刪除(實際上,只要您沒有提交,您實際上就不會執行刪除)。
一般來說,在業務級應用中,必須考慮事務處理!
事務處理也被廣泛使用,例如,如果您有任務 A 和任務 B,並且您需要成功執行 A 和 B 才能進行下一步,則需要使用事務處理。 如果 A 或 B 失敗,則所有資料都將回滾到執行前的狀態。
MySQL事務主要有兩種型別:
1. 使用 begin、rollback 和 commit 來實現它。
開始開始交易。
回滾事務。
提交事務確認。
2. 直接使用 set 更改 MySQL 的自動提交模式。
set autocommit=0 禁用自動提交。
設定 autocommit=1 以啟用自動提交。
-
它不必顯式開啟。 對於涉及一系列多個語句的操作,如果需要確保所有事務都成功或全部失敗而沒有中間狀態,則必須顯式啟用事務。
對於單個操作查詢語句,如果使用 InnoDB 儲存引擎,則無需顯式啟用事務,因為資料庫引擎將自動為單個 SQL 操作查詢隱式啟用事務。
例如:insert into t2(id,name) valuse('001','abc'),('002','cfg'),('003','hij');
如果語句在資料表中插入了三條記錄,則資料庫引擎 (innodb) 會隱式啟動事務,以確保所有三條記錄都已成功插入或全部失敗而沒有中間狀態。 使用者無需考慮交易,由系統自動處理。
1.有效期後7天後可正常使用。
7天內為短期逾期,可正常使用。 需要支付逾期罰息並償還欠款,芝麻點將相應減少,花唄金額將減少。 >>>More