【問160】ITパスポート 練習問題|主キーと外部キーの働き
情報デザイン・データベース・ネットワーク 問10/25難易度B(標準)
問題文
関係データベースにおける主キーと外部キーに関する記述のうち、適切なものはどれか。
- 1.主キーには同じ値を重複して格納してもよく、空値(NULL)を格納することも認められている。
- 2.外部キーは表の中で行を一意に識別するための列であり、一つの表に一つだけ設定できる。
- 3.主キーは他の表を参照するための列であり、参照先の表の任意の列を指定して設定する。
- 4.外部キーは他の表の主キーを参照する列であり、表どうしの関連付けと整合性の維持に用いる。
解説
正解は4。外部キーは、他の表の主キーを参照するために設ける列で、受注表の顧客番号が顧客表の顧客番号を指すように、表と表を関連付ける役割をもつ。参照先に存在しない値を登録できないようにする参照整合性の制約が働くため、対応する親のデータがない孤立した行が生まれることを防げる。1は誤り。主キーは表の中で行を一意に識別する列なので、値の重複は許されず、値がないことを表す空値(NULL)も許されない。2は誤り。行を一意に識別するための列は主キーであって外部キーではない。外部キーは参照したい相手の数だけ、一つの表に複数設けることができる。3は誤り。他の表を参照するのは外部キーの役割であり、参照先も原則としてその表の主キーである。主キーは一意に識別するためのもの、外部キーは表どうしをつなぐためのもの、と役割で覚えておくとよい。