ORACLE MASTER Silver SQL 26ai更新・定義・トランザクションの判断オリジナル・公式資料照合難易度★★★★☆

Oracle AI Database 26aiで、p(id PRIMARY KEY)にはCOMMIT済みの10だけがある。空のcは次の定義で作成済みである。自動COMMITはOFF、追加の制約・トリガー・他セッションによる変更はない。同一セッションで、表定義の後に示すINSERT 2文とCOMMITを順に実行した結果はどれか。 表定義(作成済み): CREATE TABLE c ( id NUMBER PRIMARY KEY, p_id NUMBER REFERENCES p(id) DEFERRABLE INITIALLY DEFERRED ); ここから実行: INSERT INTO c VALUES (1,99); INSERT INTO p VALUES (99); COMMIT;

A
すべて成功し、pは2行、cは1行になる★ 正解

COMMIT時点でpの99が存在するため外部キーを満たします。元のpの10も残ります。

B
最初のINSERTが、親99がないため必ず失敗する

それは即時検査の場合です。この外部キーはINITIALLY DEFERREDと明示されています。

C
2つのINSERTは成功するが、COMMITは親の作成順が逆なので失敗する

遅延検査では、親と子を挿入した順番ではなくCOMMIT時点の参照整合性を検査します。

D
COMMIT後は外部キーが無効化され、以後どのp_idも格納できる

DEFERRABLEは検査時期の設定です。制約をDISABLEする指定ではなく、以後も整合性検査は行われます。

解説

この外部キーはINITIALLY DEFERREDなので、参照整合性をトランザクションの終わりに検査します。子のINSERT時点では親99がなくても、その後同じトランザクションで親99を追加してからCOMMITするため整合性を満たします。遅延可能でも制約を無視できるわけではありません。

根拠資料・確認情報

対応範囲:Oracle AI Database 26ai SQL Associate(1Z0-171-JPN)

資料確認日:2026-10-29

同じレッスンの問題

アプリで毎日学習しよう

ゲーミフィケーションで ORACLE MASTER Silver SQL 26ai 合格を目指す。無料・課金なし。

更新: 2026/10/28
Oracle AI Database 26aiで、p(id PRIMARY KE | ORACLE MASTER Silver SQL 26ai 練習問題・解説 | Mondaily