平成25年 春期 ITパスポート 問55

関係データベースを使い“社員”表と“部署”表を作成して社員情報を管理する。
“社員”表と“部署”表に、必要に応じて設定する主キーと外部キーの適切な組合せはどれか。
ここで、社員は必ず“部署”表に存在する部署に所属するものとし、社員データの追加や更新をするときには、参照制約を利用して整合性を確保するものとする。

社員
社員コード 社員名 入社年 生年月日 部署コード
部署
部署コード 部署名

主キー 外部キー
“社員”表の社員コード、“部署”表の部署コード なし
“社員”表の社員コード、“部署”表の部署コード “社員”表の部署コード
“部署”表の部署コード “社員”表の社員コード、“部署”表の部署コード
“社員”表の部署コード “社員”表の社員コード、“部署”表の部署コード


答え イ


解説
大企業になると従業員の数が多いため、同姓同名や同じ生年月日、同じ名称の部署が複数あるのは珍しくないので これらを一意に特定するために、個々の従業員や部署にコードを割り振ります。
そのため、従業員や部署データを管理している関係データベースでも主キーとしては“社員”表の社員コード“部署”表の部署コードを使用します。
問題の“社員”表と“部署”表では各社員の部署は“社員”表の部署コードをキーに“部署”表を参照するようになっているので、“社員”表の部署コードが外部キーになります。


キーワード
・主キー
・外部キー

キーワードの解説
  • 主キー
    主キーは関係データベース(リレーショナルデータベース、RDB)において、データの組(レコード、行)を識別するのに最もふさわしいデータの項目(列)のことです。
    主キーを使いデータの組を特定します。
  • 外部キー
    データベースで、2つのテーブルの間で参照関係にあるときに、参照する側のテーブル内の、参照される側の変数のことを外部キーという。
    外部キーは、参照する側から適宜アクセスが発生するため、参照される側で削除・修正を行うと整合が取れなくなってしまうため、整合性を保つための処理が考慮されている。

もっと、「主キー」について調べてみよう。

戻る 一覧へ 次へ