本文へスキップ
BecomeCoder
Wiki一覧コース一覧

トランザクション

最終更新: 2026年8月8日

トランザクション は、複数のデータ操作を 1つのまとまりとして扱い、全部成功か、失敗なら全部なかったことにする 仕組みです。中途半端な状態を防ぎます。

典型例が送金です。「Aさんから引き落とす」「Bさんへ入金する」の2つは、必ずセットで成立しなければなりません。

flowchart TD
  A[開始] --> B[Aから1万円引く]
  B --> C[Bへ1万円足す]
  C --> D{両方成功?}
  D -- はい --> E["確定(コミット)"]
  D -- いいえ --> F["取り消し(ロールバック)"]

もし引き落としだけ成功して入金が失敗したら、お金が消えてしまいます。トランザクションは、こうした事態を防ぎ、失敗時にはすべてを開始前の状態へ 巻き戻し(ロールバック) ます。成功して初めて 確定(コミット) します。

この信頼性は、ACID特性 という4つの性質としてまとめられています。複数の処理が同時に走ると デッドロック が起きることもあり、その制御も含めて、データベースの重要な基礎です。

← Wiki一覧に戻る