正解:ア
各選択肢の解説
ア同じ項目を持つ行を集めた、表そのもの。
正解。関係モデルの「関係」は、同じ項目の並びを持つデータの集まり、 つまり1つの表を指します。「顧客」の表、「商品」の表がそれぞれ1つの関係です。
イ1件分のデータを表す、表の中の1行。
誤り。これは組(タプル)に当たります。1人の顧客、1件の注文といった データ1件分です。関係は組を集めたもので、1行だけでは関係になりません。 「集まり」か「その中の1件」かで区別します。
ウデータの性質を表す、表の中の1列。
誤り。これは属性(アトリビュート)に当たります。氏名、住所、電話番号のように 各行が持つ項目の種類です。関係は属性を並べた見出しと、それに沿った行の集まりを 合わせた全体を指し、1列だけを切り出したものではありません。
エ2つの表を結び付ける、表どうしの関連。
誤り。これはリレーションシップ(関連)の説明です。日本語ではどちらも 「関係」と訳せるため最も取り違えやすい点ですが、関係モデルの関係は表そのもの、 リレーションシップはE-R図などで表と表の結び付きを表す言葉です。
理解を深めるために
「関係」とは表のこと
関係データベースの「関係」は、表と表がつながっているから付いた名前だと 思われがちです。実際には、1つの表そのものを関係(リレーション)と呼びます。
関係モデルは、データを数学の「集合」の考え方で扱う理論です。 「氏名・住所・電話番号」という項目の組み合わせを決め、それに沿った データ1件1件を集めたものが関係です。これを目に見える形にしたものが表になります。
理論の言葉と表の言葉の対応
同じものを、理論の側と実際の表の側で別の名前で呼びます。
- 関係(リレーション) … 表
- 組(タプル) … 行(レコード)
- 属性(アトリビュート) … 列(フィールド)
たとえば「顧客」の表なら、表全体が1つの関係、顧客1人分の行が組、 「氏名」「住所」といった列が属性です。関係データベースは、 こうした関係(表)をいくつも持ち、共通の項目を手がかりに組み合わせて使います。
混同しやすいものとの違い
| 用語 | 表で言うと |
|---|---|
| 関係(リレーション) | 表そのもの |
| 組(タプル) | 表の中の1行(データ1件) |
| 属性(アトリビュート) | 表の中の1列(項目) |
| リレーションシップ | 表と表の結び付き(E-R図で使う言葉) |
「リレーション」と「リレーションシップ」は語が似ていますが、 前者は表、後者は表どうしのつながりです。語尾の「シップ」の有無で区別しましょう。