スポンサーリンク

【応用情報技術者試験】コミットとロールバックの違いをわかりやすく解説

「コミットとロールバックって何が違うの?」
応用情報技術者試験でもデータベース分野で頻出ですが、

  • トランザクションとセットで出てくる…
  • いつコミットするの?
  • ロールバックは何を戻すの?
  • 障害時にどう動く?

で混乱する人がかなり多いテーマです。

この記事では、

  • コミットとは?
  • ロールバックとは?
  • トランザクションとの関係
  • 試験での頻出ポイント

を分かりやすく解説します!


まず結論

コミット

「変更内容を確定する」


ロールバック

「変更内容を取り消す」


超簡単にいうと

操作イメージ
コミット保存ボタン
ロールバック元に戻すボタン

トランザクションとは?

超頻出!


トランザクション

一連の処理をひとまとまりとして扱う単位


銀行振込

口座Aから1万円引く

口座Bへ1万円入れる


問題

途中で障害発生すると?

口座A

引いた

口座B

入ってない


大問題!


解決方法

トランザクション


コミットとは?

超頻出!


意味

トランザクションの確定


イメージ

更新

確認

コミット

確定


SQL例

UPDATE 商品
SET 価格=1200
WHERE 商品ID=1;

COMMIT;


結果

変更内容が正式に保存される。


ロールバックとは?

超頻出!


意味

トランザクション開始前へ戻す


イメージ

更新

エラー発生

ロールバック

元に戻る


SQL例

UPDATE 商品
SET 価格=1200
WHERE 商品ID=1;

ROLLBACK;


結果

変更が取り消される。


コミットとロールバックの違い

超頻出!

比較コミットロールバック
目的確定取消
結果保存される元に戻る
使用場面正常終了異常終了
復元可否基本不可実行前へ復元

処理の流れ


トランザクション開始

更新処理

正常

COMMIT


トランザクション開始

更新処理

異常

ROLLBACK


ACID特性との関係

超頻出!


Atomicity(原子性)

全部成功か全部失敗


ロールバックが支える

途中失敗

全部取消


銀行振込

引出し成功

入金失敗

ロールバック


SAVEPOINT

発展知識!


役割

途中地点を保存


SAVEPOINT SP1;


必要に応じて

ROLLBACK TO SP1;


応用情報で超頻出

かなり狙われる👇

  • トランザクション
  • COMMIT
  • ROLLBACK
  • ACID特性
  • 原子性

よくあるひっかけ

「ロールバックはコミット後も元に戻せる」

→ ❌違う!

コミット後は

正式確定

となる。


1分で復習!

コミット

確定


ロールバック

取消


コミット

正常終了


ロールバック

異常終了


超重要

原子性を実現


練習問題

問題

ロールバックの説明として最も適切なものはどれか。

変更内容を確定する

変更内容を圧縮する

変更内容を開始前の状態に戻す

インデックスを再作成する


解答

正解:ウ

解説

ロールバックは、トランザクション中の変更を取り消し、処理開始前の状態に戻すための機能です。


まとめ

コミットとは

「変更内容を確定する」


ロールバックとは

「変更内容を取り消す」


超重要

  • トランザクション
  • COMMIT
  • ROLLBACK
  • ACID特性
  • 原子性

まずは、

「コミット=保存」

「ロールバック=元に戻す」

このイメージを持つとかなり理解しやすくなります!


知識に自信ができた方は、今度は自身のキャリアアップに向けて準備してみませんか?

未経験から、ITエンジニアへ。
「IT業界に興味はあるけれど、自分にできるか不安」「何から始めればいいのか分からない」そんな方のために、Tech GO は未経験からのIT転職を専門的にサポートします。求人を紹介するだけではなく、あなたの強みを整理し、応募準備から入社後の成…

まずは無料でキャリア相談

コメント