データベースに複数のデータを保存するときに役立つ機能です。30人分の試験結果をデータベースに保存するとします。全て問題なく登録できれば良いですが、16人目で何かエラーが起きて登録に失敗するかもしれません。このとき15人目までの登録処理をキャンセルしてくれるのがトランザクションです。トランザクションを使うと「全て登録できる」か「全て登録できない」かのどちらかになります。1件だけ登録できていなかったという状況を防ぐためにも、トランザクションを使えるようになっておきましょう。いうファイルを用意しています。ファイル名などはご自身の環境に合わせて変更してください。テーブルを用意しています。いいえデータベースに接続するまずはデータベース接続するコードを書きます。管理画面を表示するときに使っているものです。開いて「データベースに接続しました。」と表示されることを確認してください。トランザクションでデータを保存する基本的な構造まずはトランザクションの実行に最低限必要なコードを紹介します。PDO::ERRMODE_EXCEPTION);Exception(例外)を受け取るために必要な設定です。例外を受け取ることができないのでご注意ください。7行目$pdo->beginTransaction();トランザクションを開始します。11行目$pdo->commit();データ保存などのコードに問題がなければ実行されます。14行目$pdo->rollBack();途中で問題が起きたら処理を取り消します。データを保存する次はデータを保存するコードをエラーの起きないバージョンエラーになるバージョンの二通りで書いてトランザクションの動きを確認してみましょう。エラーが出ても出なくても最後に実行するコードを書くことができます。テーブルにも3つのデータが保存されています。2エラーになるバージョン次はエラーになるバージョンのコードにして、トランザクションの動きを確認してみましょう。VALUES("鈴木")');に変更して、コードを実行してみましょう。ブラウザにエラーメッセージが表示されて、データも保存されていないと思います。今回は「鈴木」のデータが保存できなかったので、前の「山田」が取り消されて、次の「佐藤」は実行されませんでした。このように途中で問題が起こったときに登録処理をキャンセルしてくれるのがトランザクションです。まとめ今回は簡単なデータ保存でしたが、カラム数が増えても以下の構造を押さえておけば簡単にトランザクションを使うことができます。MESara運営者Contact書籍やオンライン講座でプログラミングを勉強してフリーランスのプログラマーになりました。このサイトでは「わかりやすく・シンプル」をモットーに、プログラミングの基礎からアプリ開発まで紹介します。独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています。Sara運営者Profile書籍やオンライン講座でプログラミングを勉強してフリーランスのプログラマーになりました。このサイトでは「わかりやすく・シンプル」をモットーに、プログラミングの基礎からアプリ開発まで紹介します。独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています。プログラミング講座では、プログラミングの基礎からアプリ開発まで学ぶことができます。わかりやすく・シンプルをモットーに同じコードを書けば必ず完成できること専門用語を使いすぎないことを重視しています。01動くコードプログラミングの文法だけを学んでも、そこから動くアプリを開発をするのは難しいです。プログラミング講座では、ゲームやカレンダーなど「アプリとして機能するもの」を作りながらプログラミングを学ぶことができます。02自分のペースでオンライン講座なので、ご自身のペースで学習を進めて頂けます。分からないことがあっても、前のレッスンに戻ることができるので安心です。お申し込みしたその日からからすぐに始めることができます。03個別サポートプログラミング学習では、エラーが起きることはよくあります。そんな時はお気軽にお問い合わせください!コメント欄またはメールによるサポートを回数無制限でご利用頂けます。FunwpDiscuz00この記事にコメントするxInsert記事URLをコピーしました。