データベース|平成27年度 秋期 ITパスポート試験(特別措置試験) 問71
処理一覧に示す実行順に,トランザクション1〜4を実行する。あるトランザクションが途中で異常終了し,トランザクションを中断してロールバックした結果,データAとデータBが残った。異常終了したトランザクションはどれか。ここで,トランザクションが正常終了したときにコミットを行い,次のトランザクションがあれば,それを実行する。異常終了したときは,当該トランザクション以降のトランザクションを実行しないものとする。
〔処理一覧〕
| 実行順 | トランザクション名 | 処理 |
|---|---|---|
| 1 | トランザクション1 | データ A を作成する。 |
| 2 | トランザクション2 | データ B を作成し,データ A を削除する。 |
| 3 | トランザクション3 | データ A を作成する。 |
| 4 | トランザクション4 | データ B を削除する。 |
- トランザクション1
- トランザクション2
- トランザクション3
- ✓ これが正解トランザクション4
解説
異常終了した回の手前までが、そのまま残ることになります。
取り消されるのは異常終了したものだけで、それより前に確定したものは残ります。だから残ったものを見れば、どこで止まったかが決まります。一つ目でAができ、二つ目でBができてAが消え、三つ目でAがまた作られます。ここまで確定していればAとBの両方が残るので、止まったのは四つ目です。シラバスはロールバックを、障害から戻すやり方の用語例に置いています。同じものに何度もさわる問いでは、時のうつり変わりを一行ずつ書き出します。頭の中だけで追うと、途中でいったん消えたことを見落とします。四つの場合をすべて追いかけて、残るものが設問と合う一つを選びます。シラバスは同じ節に、複数の場所で足並みをそろえる仕組みも並べて置いています。戻すやり方には前へ進める形も在って、シラバスはその二つを同じ行に並べています。
ほかの選択肢はなぜ違うのか
- 最初のもので止まった場合です。何も確定していないので、残るものがありません。確定させる働きは、シラバスでは別の行に用語例として置かれています。行が違うので、戻す話と確定させる話は分けて覚えられます。置き場が手がかりです。
- 二番目で止まった場合です。確定しているのは一つ目だけなので、残るのはAだけになります。時のうつり変わりを一行ずつ書き出すと、この場合との違いが見えます。書き出す手は、同じ回の別の問いでもそのまま使えます。二問で身に付きます。
- 三番目で止まった場合です。二つ目までが確定しており、Aはそこで消えているのでBだけが残ります。同じものが途中で消えている点を書き落とすと、この肢を選んでしまいます。消えた時点に印を付けておくと防げます。印は一つで足ります。
この問題に関係する言葉
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
- ロールバック
- コミット
出典:平成27年度 秋期 ITパスポート試験(特別措置試験) 問71
同じ単元をまとめて解くならデータベースへ。
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)