ORACLE MASTER Silver SQL 26aiDMLの対応関係と同時実行オリジナル・公式資料照合難易度
MERGE INTO target t USING source s ON (t.id=s.id)の更新句で、t.id自体を変更しようとする。Oracleでの制約はどれか。
A
idがNUMBERなら制約を受けず必ず更新できる
この制約はNUMBERかどうかでなくON条件への参照による。
B
WHEN NOT MATCHEDを省けば必ず更新できる
挿入句の有無でON列の更新制約は解除されない。
C
ON条件に参照したt.idはこの更新句で更新できない★ 正解
MERGEの照合列への更新制約に該当する。
D
索引を削除すれば常にこの構文で更新できる
索引の有無でなくMERGE文の制約である。
解説
MERGEの更新句では、ON条件に参照される列を更新できない。照合に使うキーを変える処理は別のDML等へ設計し直す。
根拠資料・確認情報
対応範囲:ORACLE MASTER Silver SQL 26ai(1Z0-171-JPN)
資料確認日:2026-11-02
アプリ内の初回回答データ
回答データを読み込んでいます。
同じレッスンの問題
問題 1
別トランザクションが対象行を更新中である。SELECT ... FOR UPDATE NOWAITで同じ行のロックを要求した。通常の動作として正しいものはどれか。
問題 3
INSERT INTO dst(id) SELECT id FROM src WHERE flag=1 を実行した。条件に合うsrc行は0行であり、エラーとなる他の条件はない。結果として正しいものはどれか。
問題 4
Tはid NUMBER、label VARCHAR2(20)の順で定義されている。INSERT INTO T(label,id) VALUES('月曜',7)の対応として正しいものはどれか。
問題 5
READ COMMITTEDの同じトランザクション内で同じSELECTを2回実行した。その間に別セッションが該当行を変更してCOMMITした。2回の結果は必ず同じか。