假設如果會話在交易中結束,則目前 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中文網其他相關文章!