SQLのシーケンスに関する説明のうち、適切なものはどれか。
選択肢
- ア現在基底値が 0→1→2→0→1→2→0→... のように、周期的に繰り返すシーケンスを定義することはできない。
- イシーケンスの現在基底値を、最小値と最大値との間の任意の整数値に変更することはできない。
- ウシーケンスの増分を、負の整数値にすることはできない。
- エトランザクション開始後のシーケンスの値の取得による現在基底値の変更は、トランザクションのロールバックでその変更を取り消すことができない。
正解と解説
正解:エ トランザクション開始後のシーケンスの値の取得による現在基底値の変更は、トランザクションのロールバックでその変更を取り消すことができない。
シーケンスは、採番用のオブジェクトとして値を払い出す仕組みであり、NEXT VALUE FOR などで値を取得した時点で現在基底値が進む。この採番の進行はトランザクションの制御対象外に置かれており、あとでロールバックしても消費した番号は戻らない。そのため採番結果に欠番が生じることがあり、連番であることを業務要件に依存させてはいけない、というのが実務上の注意点である。
選択肢ごとの解説
- アCYCLE を指定すれば最大値に達したあと最小値へ戻る循環型の採番を定義できるので、定義できないという記述は誤り。
- イALTER SEQUENCE の RESTART WITH などで、最小値と最大値の範囲内の任意の値へ現在値を変更できる。
- ウ増分には負数も指定でき、その場合は値が減っていく降順シーケンスになる。
- エ正しい。採番による現在値の進行はロールバックの対象外で、取り消されずに欠番が残る。
同じ分野の他の問題
- 導出表に関する記述として、適切なものはどれか。2018年度 春期 午前II 問12
- 更新可能なビューの定義はどれか。ここで、ビュー定義の中で参照する基底表は全て更新可能とする。2016年度 春期 午前II 問10
- "名簿1"表と"名簿2"表のそれぞれ対応する行が全て等しいかどうかを確認するSQL文のa, b, cに入れる適切な字句は…2025年度 秋期 午前II 問9
- SQLの3値論理において、a, bに入る字句の組合せはどれか。 "真 AND 不定"は[ a ]であり、"偽 AND 不…2025年度 秋期 午前II 問7
- "従業員"表から、男女それぞれの最年長従業員を除く全ての従業員を取り出すSQL文とするために、aに入れる字句はどれか。こ…2024年度 秋期 午前II 問10
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。