データベース
基本情報技術者試験 科目A免除 修了試験 20120722 実施分 問34
“商品”表に対してデータの更新処理が正しく実行できるUPDATE文はどれか。ここで,“商品”表は次のCREATE文で定義されている。
CREATE TABLE 商品
(商品番号 CHAR(4), 商品名 CHAR(20), 仕入先番号 CHAR(6), 単価 INT,
PRIMARY KEY(商品番号))
商品表:
| 商品番号 | 商品名 | 仕入先番号 | 単価 |
|---|---|---|---|
| S001 | A | XX0001 | 18000 |
| S002 | A | YY0002 | 20000 |
| S003 | B | YY0002 | 35000 |
| S004 | C | ZZ0003 | 40000 |
| S005 | C | XX0001 | 38000 |
答えを選ぶ
出典:基本情報技術者試験 科目A免除 修了試験 20120722 実施分 問34(問題文は IPA の公開問題。解説は当サイト作成)
解説に誤りを見つけたら、解説の誤りを報告してください。
答えと解説を見る
正解:エ
覚える知識
主キー制約違反の判定(UPDATE文)
主キー列は一意でNULLを許さないため、これに違反する更新は実行できない。
この問題で必要なこと
主キー(商品番号)は重複・NULLが許されない。アは既存S001と重複、イはS006で唯一の更新だが商品名Cは2行該当し重複、ウはNULL。商品名のみ更新するエが正しい。
ひっかけ
主キー重複やNULL代入、複数行更新による重複を見落とさせる。
この知識の出題:本試験系 2 回・免除試験 4 回(公開問題での観測値)。頻出知識ランキング289位(全1,254件中)。