ITパスポート 2014年 秋期 問74
問題文
データベースの論理的構造を規定した論理データモデルのうち、関係データモデルの説明として適切なものはどれか。
選択肢
ア:データとデータの処理方法を、ひとまとめにしたオブジェクトとして表現する。
イ:データ同士の関係を網の目のようにつながった状態で表現する。
ウ:データ同士の関係を木構造で表現する。
エ:データの集まりを表形式で表現する。(正解)
🔒 解説は解答すると表示されます
データベースの論理データモデル(関係データモデル)の説明【ITパスポート 解説】
正解の理由
関係データモデルは、データの集まりを「表形式(テーブル)」で表現する方式です。表は「列(属性:attribute)」と「行(タプル:tuple)」で構成され、各行がひとつのデータ項目(例:1人分の顧客情報)を表します。表形式である点が、選択肢の中で最も適切なので、エが正解です。
ポイントをかみ砕くと:
- 「関係(relation)」は数学の集合論由来の言葉で、ここでは「表(table)」を意味します。
- 関係データモデルは、データの型(列)と各レコード(行)を明確に分けて管理します。
- 実運用では SQL(Structured Query Language:関係データベースを操作する言語)を使って表を検索・更新します。
解法ステップ
- 「関係データモデル」という語から、まず「関係=relation=表(table)」を思い出す。関係の語源が数学の「集合の組合せ」であることを意識する。
- 各選択肢のキーワードをチェックする:
- 「オブジェクト」「まとめて」「処理方法」はオブジェクト指向型。
- 「網の目」「つながった状態」はネットワーク型。
- 「木構造」は階層型。
- 「表形式」は関係(リレーショナル)型。
- 表現が一致する選択肢を選ぶ。ここでは「表形式」で一致する エ を選ぶ。
選択肢別の誤答解説
-
ア: データとデータの処理方法を、ひとまとめにしたオブジェクトとして表現する。
→ これはオブジェクト指向データモデルの説明です。オブジェクト指向では「データ(属性)」と「処理(メソッド)」を一つの単位(オブジェクト)で扱います。関係データモデルはデータと処理を分けて管理します。 -
イ: データ同士の関係を網の目のようにつながった状態で表現する。
→ これはネットワーク型データモデル(ネットワークモデル)の説明です。レコード間を複雑なリンク(多対多の関係)で表現します。関係データモデルはリンクではなく、外部キーなどで表の間接的な関連付けをしますが、表自体は表形式です。 -
ウ: データ同士の関係を木構造で表現する。
→ これは階層型データモデル(ツリー構造)の説明です。親子関係が明確なツリー構造で表します。例えばフォルダ構造に似ています。関係データモデルは階層に限定されません。 -
エ: データの集まりを表形式で表現する。
→ これが関係データモデルの正しい説明です。表(テーブル)の列=属性、行=タプル、表全体=リレーションです。
よくある誤解
-
「関係(relation)」を「人と人の関係」のようなリンクだと勘違いする
- 実際は数学的な「関係」で、表(rowsとcolumns)のことを指します。リンク構造を強調するのはネットワークモデルや階層モデルです。
-
テーブル=ファイルだと考える
- テーブルは見た目はファイルのようですが、関係データベースは検索(SQL)や制約(主キー、外部キー)などでデータの整合性を保ちます。ただの一覧表とは違います。
補足コラム
- 発祥:関係データモデルは Edgar F. Codd(エドガー・F・コッド)によって1970年に提唱されました。数学的な集合論と関係代数(relational algebra)をベースにしています。
- 実務での利点:データ整合性(重複防止、参照整合性)や柔軟な検索が得意です。多くの業務システムで使われる代表的なモデルです。
- 主要用語:
- データベース(データを整理して蓄える仕組み)
- テーブル(表)
- 属性(attribute:列)
- タプル(tuple:行、レコード)
- 主キー(primary key:行を一意に識別する列)
- 外部キー(foreign key:別の表の主キーを参照して関係を表す)
簡単な例(顧客テーブル):
このように行ごとに一人分の情報がまとまっています。
FAQ
Q1. 関係データモデルと SQL は同じものですか?
A1. 同じではありません。関係データモデルはデータの論理構造(表で表す考え方)で、SQL(Structured Query Language)はそのモデルを操作するための言語です。関係モデルを使うデータベースでSQLがよく使われます。
A1. 同じではありません。関係データモデルはデータの論理構造(表で表す考え方)で、SQL(Structured Query Language)はそのモデルを操作するための言語です。関係モデルを使うデータベースでSQLがよく使われます。
Q2. ネットワーク型や階層型より関係モデルが良いのですか?
A2. 一概に良いとは言えません。関係モデルは汎用性と整合性が高く多くの業務に向きますが、ツリー構造が自然な場合(例:ファイルシステム)や複雑なグラフ構造を大量に扱う場合は他モデルやNoSQLが適することもあります。
A2. 一概に良いとは言えません。関係モデルは汎用性と整合性が高く多くの業務に向きますが、ツリー構造が自然な場合(例:ファイルシステム)や複雑なグラフ構造を大量に扱う場合は他モデルやNoSQLが適することもあります。
Q3. 「主キー」と「外部キー」は何のためにあるのですか?
A3. 主キーは各行を一意に識別するため、外部キーは別の表と正しくつなげるために使います。これによりデータの整合性(矛盾のない状態)を保てます。
A3. 主キーは各行を一意に識別するため、外部キーは別の表と正しくつなげるために使います。これによりデータの整合性(矛盾のない状態)を保てます。
関連キーワード: 関係データモデル、リレーショナルデータベース、テーブル、属性、タプル、主キー、外部キー、正規化、SQL、階層型データモデル、ネットワーク型データモデル、オブジェクト指向データモデル

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

