如果會話在交易中途結束,目前 MySQL 事務會發生什麼情況?

王林
發布: 2023-08-25 09:53:04
轉載
1392 人瀏覽過

如果会话在事务中途结束,当前 MySQL 事务会发生什么情况?

假設如果會話在交易中結束,則目前 MySQL 交易將會被 MySQL 回溯並結束。這意味著當前事務中所做的所有資料庫變更都將被刪除。會話結束時稱為n隱式回滾。

範例

假設我們在表格「marks」中有以下值

mysql> Select * from marks;
+------+---------+-----------+-------+
| Id   | Name    | Subject   | Marks |
+------+---------+-----------+-------+
| 1    | Aarav   | Maths     | 50    |
| 1    | Harshit | Maths     | 55    |
| 3    | Gaurav  | Comp      | 69    |
| 4    | Rahul   | History   | 40    |
| 5    | Yashraj | English   | 48    |
| 6    | Manak   | History   | 70    |
+------+---------+-----------+-------+
6 rows in set (0.00 sec)

mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

mysql> UPDATE marks SET Name = ‘Yash’ Where id = 5;
Query OK, 1 row affected (0.06 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> quit;
Bye
登入後複製

在上面的範例中,更新表中的值後,透過執行quit 語句結束會話。當我們再次啟動會話後查看表格時,更新的值已被 MySQL 回滾,因為會話在事務中結束。

以上是如果會話在交易中途結束,目前 MySQL 事務會發生什麼情況?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板