除了 START TRANSACTION 外,哪條語句用於開始事務?
我們還可以使用BEGIN語句來開始一個新事務。它與START TRANSACTION語句相同。
示例
mysql> BEGIN; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO Marks Values(1, 'Aarav','History',40); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO Marks Values(2, 'Harshit','History',48); Query OK, 1 row affected (0.00 sec) mysql> ROLLBACK; Query OK, 0 rows affected (0.04 sec)
在此示例中,事務是由BEGIN語句而不是START TRANSACTION語句發起的。然後執行兩個INSERT語句,後跟一個ROLLBACK語句。ROLLBACK語句將撤消對資料庫所做的更改,這可以透過以下結果集觀察到,該結果集顯示沒有新值插入到表中−
mysql> SELECT * FROM Marks; +------+---------+---------+-------+ | Id | Name | Subject | Marks | +------+---------+---------+-------+ | 1 | Aarav | Maths | 50 | | 2 | Harshit | Maths | 55 | +------+---------+---------+-------+ 2 rows in set (0.00 sec)
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP