セッションがトランザクションの途中で終了した場合、現在の MySQL トランザクションはどうなりますか?

王林
リリース: 2023-08-25 09:53:04
転載
1392 人が閲覧しました

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

#セッションがトランザクションで終了した場合、現在の MySQL トランザクションは MySQL によってロールバックされ、終了すると仮定します。これは、現在のトランザクションで行われたデータベースの変更がすべて削除されることを意味します。セッションの終了は暗黙的なロールバックと呼ばれます。

テーブル "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
ログイン後にコピー

上記の例では、テーブル内の値を更新した後、end quit ステートメントを実行してセッションを終了します。セッションを再度開始した後にテーブルを見ると、セッションがトランザクションで終了したため、更新された値が MySQL によってロールバックされています。

以上がセッションがトランザクションの途中で終了した場合、現在の MySQL トランザクションはどうなりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート