ガイドIP

ITパスポートのデータベース|主キー・外部キー・正規化の基本

公開: 2026-08-25更新: 2026-10-05
主キーと外部キーの違い、複合キー、第1〜第3正規形を整理。データの重複や更新時の矛盾を減らす設計を、確認問題で復習できます。

データベースの過去問は、「行を識別するキー」と「表を結び付けるキー」を区別するところから始めます。主キー・外部キーと、データの重複を整理する正規化を確認しましょう。

用語を覚えたら、末尾の確認問題を解いてみてください。重複・NULL・参照先の存在という条件を、問題文に合わせて判断します。

1. 関係データベースの基本構造と用語

用語

別名

意味と具体例

表(テーブル)

リレーション

行と列で構成されるデータの集合(例:社員テーブル、注文テーブル)

行(レコード)

組(タプル)

1件分のまとまったデータ(例:社員AさんのID、氏名、部署名)

列(カラム)

属性(アトリビュート)

データの項目名(例:社員番号、氏名、電話番号)

2. キーの役割と整合性制約

キー

意味・制約

例

主キー

各行を一意に識別する列、または列の組合せ。重複とNULLを認めない

社員番号。複数列を組み合わせて主キーにする場合もある

外部キー

別の表、または同じ表の主キーや一意なキーを参照する列・列の組合せ

注文表の顧客ID。NULLを禁止するかは別の制約で決める

複合キー

複数の列の組合せで行を識別するキー

「注文番号+枝番」「年度+学籍番号」

3. 正規化:重複と更新時の矛盾を減らす

正規化を行わない非正規形の表では、「社員の部署異動時に複数箇所を書き換えなければならず、矛盾が生じる(更新時異常)」などの問題が発生します。

段階

基本的な操作

ねらい

第1正規形

繰り返し項目を整理し、各セルを単一の値にする

表の各値を個別に扱えるようにする

第2正規形

第1正規形から、キーの一部だけに依存する非キー項目を分離する

部分関数従属による重複を減らす

第3正規形

第2正規形から、非キー項目を介してキーに依存する項目を分離する

推移的関数従属による重複を減らす

4. 【実戦演習 問1】主キーの制約条件

【問題】関係データベースにおいて、テーブルの「主キー(Primary Key)」に設定された列が満たすべき性質として、最も適切なものはどれか。

  • ア:テーブル内で値が重複してはならないが、値が未入力(NULL)であることは許可される。

  • イ:値が未入力(NULL)であってはならないが、他の行と同じ値が重複して存在することは許可される。

  • ウ:テーブル内のすべての行で値が一意(重複なし)であり、かつ値が未入力(NULL)であってはならない。

  • エ:他のテーブルに存在する主キーと同じ値を持っていなければならない。

【正解】ウ

解説

  • ア:誤り。主キーはNULLを絶対に許可しません(NOT NULL制約)。

  • イ:誤り。主キーは重複を絶対に許可しません(一意性制約)。

  • ウ:正解。主キーは「一意性制約(Unique)」と「非空制約(NOT NULL)」の両方を同時に満たす必要があります。

  • エ:誤り。これは外部キーの「参照整合性制約」の説明です。

5. 【実戦演習 問2】データベースの正規化の目的

【問題】関係データベースの設計において、表の「正規化」を行う主な目的として、最も適切なものはどれか。

  • ア:データの重複を排除し、データの追加・更新・削除に伴う不整合(矛盾)の発生を防止する。

  • イ:表の数を最小限の1つに統合することで、検索処理(SELECT文)の実行速度を極限まで高める。

  • ウ:ハードディスクの故障時に備えて、同一のデータを複数の表に自動バックアップする。

  • エ:データベース管理システム(DBMS)のメモリ使用量をゼロにする。

【正解】ア

解説

  • ア:正解。正規化の本質的な目的は「データの冗長性(重複)の排除」と「更新・削除時のデータの不整合(更新時異常)の防止」です。

  • イ:誤り。正規化を行うと表が分割されるため、検索時に結合(JOIN)が必要になり、むしろ検索速度が若干低下する場合があります(そのため性能向上のためにあえて非正規化することもあります)。

  • ウ:誤り。レプリケーションやバックアップの説明です。

  • エ:誤り。DBMSのメモリ使用量をゼロにすることはできません。

出典と仕様を確認する

IPA:ITパスポート試験シラバス Ver.6.5

PostgreSQL:主キー・外部キーなどの制約

次におすすめの学習

編集・検証について

編集・検証:IT資格ラボ編集部

IPAが公開する試験要綱・シラバス・過去問題と、各技術の公式資料を優先して内容を確認しています。制度変更や誤りを確認した場合は、記事を見直して更新します。

編集方針・情報源・訂正方針を見る
この記事を共有する