本文へスキップ
Certia
未分類
春期

データベーススペシャリスト 2010年 春期 問3

3 / 25

表Rに,(A,B)の2列でユニークにする制約(UNIQUE 制約)が定義されている とき、表Rに対する SQL文でこの制約の違反となるものはどれか。ここで、表Rに は主キーの定義がなく、また、すべての列は値が決まっていない場合(NULL)もあ るものとする。 R A B D C AA01 BB01 CCO1 DDO1 AA01 BB02 CCO2 NULL DD03 AA02 BB01 NULL AA02 BB03 NULL NULL

正解と解説

表示する
正解 エ

UPDATE R SET A = 'AA02" WHERE A = 'AA01'

(A,B)のUNIQUE制約では、両方がNULLでない同一の組が重複すると違反です。UPDATEでA=AA01の行をAA02に変えると、(AA02,BB01)が既存行と重複し違反するため、エが正解です。NULLを含む組は一般に重複とみなされず、DELETEや該当しないINSERTは違反になりません。

AI に聞く

AI のボタンを押すと、問題文と解答を入れたプロンプトをコピーしてから各サービスを開きます。入力欄に自動で入らない場合は貼り付けてください。