IPA過去問ドリル

令和2年度 10月 データベーススペシャリスト試験 午前Ⅱ 問12

テクノロジ/データベース

SQLトランザクション内で変更を部分的に取り消すために設定するものはどれか。

出典:令和2年度 10月 データベーススペシャリスト試験 午前Ⅱ 問12

正解:イ

解説

SQLトランザクション内でセーブポイントを設定しておくと,トランザクション全体をロールバックするのではなく,そのセーブポイントまで部分的に変更を取り消す(ロールバックする)ことができます。

選択肢ごとの解説

  • 誤り。コミットポイントはトランザクションの変更を確定させる時点を指すものであり,変更を部分的に取り消すための仕組みではありません。
  • 正しい。セーブポイントは,トランザクション内の途中の時点に印を付けておき,そのセーブポイントまで変更を部分的に取り消すために使用されます。
  • 誤り。制約モードは,一意性制約や参照制約などの検査タイミング(即時か,トランザクション終了時か)を制御するものであり,変更を部分的に取り消すための仕組みではありません。
  • 誤り。チェックポイントは,DBMSが更新内容をディスクに反映し障害回復の起点とする処理であり,トランザクション内で変更を部分的に取り消すための仕組みではありません。
データベーススペシャリストの過去問を演習モードで解く