修了試験 2014-01-26実施分 基本情報技術者試験 問32
“商品”表に対してデータの更新処理が正しく実行できる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
正答4
解説
正解は4です。 “商品”表は、商品番号を主キー(PRIMARY KEY)として定義しています。 主キーには、値の重複が許されない一意性制約と、NULLが許されない非NULL制約がかかります。 これらに違反するUPDATE文は実行できません。 【選択肢別解説】 1:× S002の商品番号をS001に変えると、既にあるS001と重複します。 主キーの一意性制約に違反するため、実行できません。 2:× 商品名が'C'の行はS004とS005の2行あります。 両方をS006に変えると主キーが重複するため、実行できません。 3:× 主キーにはNULLを設定できません。 非NULL制約に違反するため、実行できません。 4:○ 主キーではない商品名を、S003の1行だけ'D'に変えます。 制約に違反しないので、正しく実行できます。 【ポイント】 主キーの条件は「一意であること」と「NULLでないこと」の二つです。 WHERE句で複数の行が選ばれると、すべての行が同じ値に更新される点にも注意します。まとめて解く
修了試験 2014-01-26実施分を通しで解く(80問)→