019 例外と例外処理(トランザクションとロールバック) 034 問題

問題

データベース内の複数のテーブルに変更を加えるプログラムを作成します。一部のテーブルでの変更が成功し、他のテーブルでの変更が失敗した場合、トランザクションをロールバックし、エラーメッセージを表示してください。

ヒント

  1. トランザクションの開始と終了:
    • トランザクションは複数のデータベース操作をまとめて処理するために使用されます。トランザクションは必要に応じて開始し、正常に完了した場合にはコミットし、エラーが発生した場合にはロールバックします。
  2. 各テーブルでの変更:
    • 各テーブルに対する変更は、それぞれのメソッドで行います。各メソッド内でのデータベースの更新処理を記述します。
  3. エラー処理:
    • 各メソッド内でエラーが発生した場合、トランザクション全体をロールバックする必要があります。これにより、変更が一部だけ実行されていた場合でもデータベースが一貫性を保ちます。
  4. トランザクションのコミットとロールバック:
    • すべての変更が成功した場合、トランザクションをコミットします。逆に、どれか一つでもエラーが発生した場合、トランザクションをロールバックします。

これらのポイントを考慮して、複数のテーブルに変更を加えるプログラムを作成してください。

解答例

「019 例外と例外処理」問題集リスト