ITパスポート試験 - 令和8年 - 問57

関係データベースで管理している“学生”表,“科目”表,“成績”表がある。1人の学生は複数の科目を履修するものとし,“学生”表に登録されていない学生や,“科目”表に登録されていない科目は“成績”表に登録できないものとするとき,外部キーとして設定するのが適切なものはどれか。ここで,表中の下線は主キーを表す。

“学生”表の学生番号,“成績”表の学生番号
“学生”表の学生名,“科目”表の科目名
“成績”表の学生番号と科目コード
“成績”表の成績
答え
分野 : テクノロジ系 › 技術要素 › データベース › データベース設計
解説
「学生」表,「科目」表,「成績」表の関係から,外部キーとして設定すべきものを選ぶ問題です。添付の画像では,学生表は学生番号(主キー)と学生名,科目表は科目コード(主キー)と科目名,成績表は学生番号,科目コード,成績という項目を持ちます。答えは「ウ」です。成績表に登録されている学生番号は学生表の主キーを,科目コードは科目表の主キーをそれぞれ参照する必要があるため,この2つの列が成績表における外部キーとして設定されます。

外部キーを設定することで,学生表に存在しない学生番号や,科目表に存在しない科目コードを成績表に登録できないよう制約をかけることができます。選択肢「ア」「イ」「エ」はそれぞれ別の表の主キー同士の組合せや,成績列を挙げていますが,これらは外部キーの説明として適切ではないため誤りです。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる