「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

出典:平成27年度 ITパスポート試験(IP) 秋期分 問71

difficulty難易度設定
スポンサーリンク

予備知識


用語意味
トランザクション「商品を渡して、代金を受け取る」のように「ここから ここまでワンセット」な処理単位
トランザクション処理「商品を渡して、代金を受け取る」のように「ここから ここまでワンセット」になっている処理
コミットトランザクション処理において、あれやこれやとやった結果を確定させること
ロールバックやりかけの処理を取り消すこと。トランザクション処理において、あれやこれやと処理した結果を取り消して、やらなかったことにすること

問題


問題文
処理一覧に示す実行順に,トランザクション1~4を実行する。あるトランザクションが途中で異常終了し,トランザクションを中断してロールバックした結果,データAとデータBが残った。異常終了したトランザクションはどれか。ここで,トランザクションが正常終了したときにコミットを行い,次のトランザクションがあれば,それを実行する。異常終了したときは,当該トランザクション以降のトランザクションを実行しないものとする。

[処理一覧]
実行順トランザクション名処理
1トランザクション1データAを作成する。
2トランザクション2データBを作成し、データAを削除する。
3トランザクション3データAを作成する。
4トランザクション4データBを削除する。
ピヨ意訳:以下の表の順番で処理を実行したよ。ある「処理の集まり」の処理中に異常が発生したので、その「処理の集まり」でやったことを全部なかったことにして終了したよ。終了した時点でデータAとデータBが残っていたんだけど、異常が発生した「処理の集まり」は、どれ?なお、異常が発生した後の「処理の集まり」は、やってないよ。異常が発生する前の「処理の集まり」は、なかったことにしてないよ。

[処理一覧]
実行順「処理の集まり」の名前処理の内容
1トランザクション1データA→作る
2トランザクション2データB→作る、データA→消す
3トランザクション3データA→作る
4トランザクション4データB→消す

解答選択肢
トランザクション1
ピヨ意訳:-
トランザクション2
ピヨ意訳:-
トランザクション3
ピヨ意訳:-
トランザクション4
ピヨ意訳:-


正解までのつなぎ

正解


正解
トランザクション4
ピヨ意訳:-

ピヨピヨ解説


トランザクションとかコミットとかロールバックとか出てくると難しく感じますが、問題の内容自体は単純です。

トランザクションは「処理の集まり」だと思ってください。
問題文で言っているのは

1.1つの「処理の集まり」が全部終わったら、次の「処理の集まり」をやるよ
2.「処理の集まり」の途中で失敗したら、その「処理の集まり」はやらなかったことにするよ
3.「処理の集まり」の途中で失敗したら、以降の「処理の集まり」はやらないよ


です。

さらに「処理の集まり」は4つあります。
それぞれの「処理の集まり」でやることは

トランザクション1:データA→作る
トランザクション2:データB→作る、データA→消す
トランザクション3:データA→作る
トランザクション4:データB→消す


です。

あとは地道に見ていきましょう。

「トランザクション1」で失敗したら、終わった処理は何もありません。
データは何もない状態になります。

「トランザクション2」で失敗したら、終わった処理は

トランザクション1:データA→作る

です。
データAがある状態になります。

「トランザクション3」で失敗したら、終わった処理は

トランザクション1:データA→作る
トランザクション2:データB→作る、データA→消す


です。
データBがある状態になります。

「トランザクション4」で失敗したら、終わった処理は

トランザクション1:データA→作る
トランザクション2:データB→作る、データA→消す
トランザクション3:データA→作る


です。
データAとデータBがある状態になります。

問題文には「データAとデータBが残った」と書いてありますね。

「エ:トランザクション4」が正解です。


スポンサーリンク
書籍画像062
書籍画像042


書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
エンジニア育成現場の「失敗」集めてみた。 42の失敗事例で学ぶマネジメントのうまい進めかた
おい点P、動くんじゃねえ!──ニガテ民のための算数と数学の本