SC情報処理安全確保支援士試験 午前Ⅱ

令和6年度秋期 情報処理安全確保支援士 午前Ⅱ 問21

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

関係モデルにおける外部キーに関する記述のうち、 適切なものはどれか。

選択肢

  1. ア
    外部キーの値は、 その関係の中で一意でなければならない。
  2. イ
    外部キーは、 それが参照する候補キーと比較可能でなくてもよい。
  3. ウ
    参照先の関係に、 参照元の外部キーの値と一致する候補キーが存在しなくてもよい。
  4. エ
    一つの関係に外部キーが複数存在してもよい。
解き方のヒントを見る

午前II 問21:外部キーは1つだけじゃなくてもいいよ

関係モデルでは、1つの表がいくつもの別の表を参照することがあるよ。たとえば「注文表」が「顧客表」と「商品表」の両方を見に行くようなイメージだね。そのため、外部キーが複数あってもまったく問題ないよ。

この問題で問われていること

外部キー制約は、表同士のつながりを正しく保つためのルールだよ。1つの表に外部キーを複数設定できる、という基本的な性質を理解しているかがポイントだよ。

外部キー

複数の参照先や役割を持つ列があれば外部キーも複数定義できる。

1 relation\n-> multiple foreign keys\npossible

確認ポイント

  • 外部キー値はその関係内で一意である必要はない。
  • 参照先の候補キーと比較可能でなければならない。
  • 複数存在してよいを選ぶ。
正解と解説を見る

正解

エ

出典

問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。

選択肢ア

これは間違いだよ。外部キーの値は、その表の中で一意である必要はないんだ。たとえば注文表では、同じ顧客IDの人が何回も注文することがあるよね。同じお客さんを何度も指してよいので、外部キーは合鍵というより『参照先の住所メモ』みたいなものだよ。

選択肢イ

これは間違いだよ。外部キーは、参照先の候補キーと同じ種類の値として比べられる必要があるんだ。たとえば、会員番号で受付に問い合わせるなら、受付側も会員番号で探せないと困るよね。電話番号と会員番号を比べても一致確認できない、というイメージだよ。

選択肢ウ

これは間違いだよ。外部キーの値は、参照先にちゃんと存在する候補キーの値と一致していないといけないんだ。たとえば社員証に部署番号が書いてあるのに、その部署が会社に存在しなかったら困るよね。外部キーは『存在する相手を指す約束』だと考えよう。

選択肢エ(正解)

これは正しいよ。一つの表に外部キーが複数あっても問題ないんだ。たとえば注文表に「顧客ID」と「商品ID」があり、顧客表と商品表の両方を参照するような感じだよ。注文書が複数の窓口に問い合わせ先を持っていても自然だよね。

出典:独立行政法人 情報処理推進機構(IPA)令和6年度秋期 情報処理安全確保支援士試験 午前Ⅱ 問21(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針