首頁 >資料庫 >mysql教程 >如果會話在交易中途結束,目前 MySQL 事務會發生什麼情況?

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

王林
王林轉載
2023-08-25 09:53:041422瀏覽

如果会话在事务中途结束,当前 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刪除