topic: db (PDO / SQL / マルチDB) / ch08

ch08 — トランザクション

学習目標

  • beginTransaction() で「ここから先は一塊」と宣言できる
  • commit() で確定、rollBack() で取り消し
  • 途中で例外が出たら 全部巻き戻す ことでデータの一貫性を守れる
  • 「複数の更新を全部成功させたい」ときに使う理由を説明できる

所要時間

スライド 4 分 + ドリル 2 問 = 15 分

ドリル

no 内容
01 2 件 INSERT を 1 トランザクションで実行 → commit → SELECT 確認
02 1 件目成功 → 2 件目で例外 → rollBack → 何も追加されていない

演習問題(2問)

  1. ドリル 01 — 2 件 INSERT を commit

    starter.php answer.php

  2. ドリル 02 — エラーで rollBack

    starter.php answer.php

サイト内で問題文・雛形・解答例を確認できます。実際に手元で解くには教材リポジトリ(nomuraya-dojo/php)を clone してください。