平成30年 春期 データベーススペシャリスト 午前II 問7

商品情報に価格、サイズなどの管理項目を追加する場合でもスキーマ変更を不要とするために、“管理項目”表を次のSQLで定義した。
“管理項目”表の“ID”は商品ごとに付与する。
このとき、同じIDの商品に対して、異なる商品名を定義できないようにしたい。
aに入る字句はどれか。

[SQL文]
 CREATE TABLE 管理項目 (
    ID     INTEGER NOT NULL,
    項目名   VARCHAR(20) NOT NULL,
    データ型  VARCHAR(10) NOT NULL,
    値     VARCHAR(100) NOT NULL,
          a      
 )

 ア  UNIQUE (ID)
 イ  UNIQUE (ID, 項目名)
 ウ  UNIQUE (ID, 項目名, 値)
 エ  UNIQUE (項目名, 値)


答え イ


解説
問題で禁止したいのは「IDと項目名が同じ時にその値が異なる」ということなので、これをSQL文のUNIQUEを使うと
 UNIQUE (ID, 項目名)
(イ)になる。


キーワード
・UNIQUE制約

キーワードの解説

戻る 一覧へ 次へ