DBMSにおけるリレーショナルデータモデル: Concepts & 例
⚡ スマートサマリー
リレーショナルモデルは、データベースを関係の集合として表現し、各関係は行と列からなるテーブルです。リレーショナルモデルは、リレーショナルデータの一貫性を保ち、クエリを容易にするためのコアコンセプト、整合性制約、および更新操作を定義します。
リレーショナル モデルとは何ですか?
リレーショナル モデル (RM) データベースをリレーションのコレクションとして表します。 リレーションは値のテーブルにすぎません。 テーブル内の各行は、関連するデータ値のコレクションを表します。 表内のこれらの行は、現実世界の実体または関係を示します。
テーブル名と列名は、各行の値の意味を解釈するのに役立ちます。データは一連の関係として表現されます。リレーショナルモデルでは、データはテーブルとして格納されます。ただし、データの物理的な格納方法は、データの論理的な構成方法とは無関係です。
このモデルは1970年にEF・コッドによって提唱され、今日使用されているほぼすべての主要なデータベースの基礎となっている。 代表的なリレーショナルデータベース管理システムには以下のようなものがあります。
- DB2 および Informix ダイナミック サーバー – IBM
- Oracle そしてRDB – Oracle
- SQL サーバーとアクセス – Microsoft
関係モデル Concepts DBMSで
- 属性: テーブルの各列。属性とは、関係を定義するプロパティのことです。例:学生登録番号、名前など。
- テーブル: リレーショナルモデルでは、リレーションはテーブル形式で保存されます。テーブルはエンティティとともに保存されます。テーブルには行と列という2つのプロパティがあります。行はレコードを表し、列は属性を表します。
- タプル: それはテーブルの1行に過ぎず、1つのレコードが含まれている。
- 関係スキーマ: 関係スキーマは、関係の名前とその属性を表します。
- 度: 関係に含まれる属性の総数を、その関係の次数と呼ぶ。
- カーディナリティ: テーブルに存在する行の総数。
- カラム: 列は、特定の属性の値のセットを表します。
- 関係インスタンス: リレーションインスタンスとは、RDBMSシステムにおけるタプルの有限集合のことです。リレーションインスタンスには、重複するタプルは存在しません。
- 関係キー: 各行には、1つ、2つ、または複数の属性があり、これをリレーションキーと呼びます。
- 属性ドメイン: すべての属性には、あらかじめ定義された値と範囲があり、これは属性ドメインとして知られています。
語彙が揃ったら、次の懸念事項はping これらの関係におけるデータが有効であること、それが整合性制約の役割です。
リレーショナル Integrity 制約
DBMSにおける関係整合性制約とは、有効な関係が存在するために満たされなければならない条件を指します。これらの関係制約は、データベースが表現するミニワールドにおけるルールから導き出されます。
整合性制約には多くの種類があります。リレーショナルデータベース管理システムにおける制約は、主に次の3つの主要なカテゴリに分類されます。
- ドメインの制約
- 主な制約
- 参考文献 Integrity 制約
ドメインの制約
属性値が対応するドメインに存在しない場合、または適切なデータ型でない場合、ドメイン制約に違反する可能性があります。
ドメイン制約とは、各タプル内の各属性の値がアトミックであり、かつ正しいドメインから取得されなければならないことを指定するものです。ドメインはデータ型として指定され、整数、実数、文字、ブール値、可変長文字列などの標準型が含まれます。
例:
CREATE DOMAIN CustomerName CHECK (value NOT NULL)
この例は、CustomerNameがNULLでないというドメイン制約を作成する方法を示しています。
主な制約
リレーション内のタプルを一意に識別できる属性は、テーブルのキーと呼ばれます。 リレーション内の異なるタプルの属性の値は一意である必要があります。
例:
与えられた表では、CustomerID は Customer テーブルのキー属性です。顧客 1 人につき単一のキーを持つ可能性が最も高いです。CustomerID = 1 は CustomerName のみに該当します。Google」さまざまなキータイプの詳細な説明は、ガイドに記載されています。 DBMSキー.
| 顧客ID | 顧客名 | ステータス |
|---|---|---|
| 1 | 有効 | |
| 2 | Amazon | 有効 |
| 3 | Apple | 非アクティブ |
参考文献 Integrity 制約
DBMSにおける参照整合性制約は、外部キーの概念に基づいています。外部キーとは、他のリレーションから参照されるべき、リレーションの重要な属性です。参照整合性制約は、リレーションが異なるリレーションまたは同じリレーションのキー属性を参照する場合に発生します。そのキー要素は、参照先のテーブルに存在しなければなりません。
例:
上記の例では、顧客と顧客の 2 つの関係があります。 Billる。
CustomerID = 1 のタプルは、リレーション内で 2 回参照されています。 Billing。つまり、CustomerName はわかっています。Google請求金額は300ドルです。
Opera関係モデルにおける
リレーショナルデータベースモデルでは、挿入、更新、削除、選択という4つの基本的な更新操作が実行されます。
- INSERT文は、リレーションにデータを挿入するために使用されます。
- Delete は、テーブルからタプルを削除するために使用されます。
- 変更を使用すると、既存のタプルの一部の属性の値を変更できます。
- [選択] を使用すると、特定の範囲のデータを選択できます。
これらの操作のいずれかが適用される場合、リレーショナルデータベーススキーマに指定された整合性制約に違反してはならない。
インサート Opera生産
挿入操作は、リレーションに挿入されるべき新しいタプルの属性値を返します。
更新 Opera生産
以下の関連テーブルを見ると、顧客名「Apple」が「非アクティブ」から「アクティブ」に更新されていることがわかります。
削除 Opera生産
削除を指定するには、リレーションの属性に関する条件によって、削除するタプルが選択されます。
上記の例では、顧客名「Apple」がテーブルから削除されます。
削除操作は、削除対象のタプルが同じテーブル内の他のタプルの外部キーによって参照されている場合、参照整合性を侵害する可能性があります。 データベース.
選択 Opera生産
上記の例では、顧客名「Amazon」が選択されています。
関係モデルと階層モデルおよびネットワークモデルの比較
関係モデルは、それまでの2つのアプローチに取って代わり、その対比によって、なぜ関係モデルが主流になったのかが明らかになる。下の表は、これら3つのアプローチを並べて示したものである。
| 側面 | 関係モデル | 階層モデル | ネットワークモデル |
|---|---|---|---|
| Structure | テーブル(リレーション) | 木、親から子へ | グラフ、多対多 |
| データアクセス | 値による宣言 | 経路によるナビゲーション | ポインターによるナビゲーション |
| の関係 | 外部キー | 親子関係 | セットとポインタ |
| クエリ言語 | SQL | 手続きコード | 手続きコード |
| 柔軟性 | ハイ | ロー | 技法 |
関係モデルは物理的なリンクをたどるのではなく、値によってデータを扱うため、 SQL データがどのように保存されているかを知らなくても、クエリを表現できる。
リレーショナルモデルを作成するためのベストプラクティス
- データは、関係性の集合として表現される必要がある。
- 表には、それぞれの関係を明確に示す必要があります。
- 各行には、エンティティのインスタンスに関するデータが含まれている必要があります。
- 列には、エンティティの属性に関するデータを含める必要があります。
- 表の各セルには、単一の値が格納される必要があります。
- 各列には固有の名前を付ける必要があります。
- 全く同じ行は二つと存在しない。
- 属性の値はすべて同じドメインに属している必要があります。
リレーショナルデータベースモデルの利点
- シンプルさ: DBMSにおけるリレーショナルデータモデルは、階層型モデルやネットワーク型モデルよりも単純である。
- 構造的独立性: リレーショナルデータベースはデータのみに関心を持ち、構造には関心を持たないため、モデルのパフォーマンスを向上させることができる。
- 使いやすい: リレーショナルモデルは、行と列で構成される表が自然で理解しやすいため、使いやすい。
- クエリ機能: これにより、SQLのような高水準クエリ言語が複雑なデータベースナビゲーションを回避することが可能になります。
- データの独立性: リレーショナルデータベースの構造は、アプリケーションを変更することなく変更できる。
- 可変的な、測定できる、登れる、はがせる: レコード数や行数、フィールド数に関して言えば、データベースは使いやすさを向上させるために拡張することができる。
関係モデルの欠点
- リレーショナルデータベースでフィールド長に制限があり、それを超えることができないものはごくわずかである。
- リレーショナルデータベースは、データ量が増加し、データ間の関係が複雑化するにつれて、時に複雑化することがある。
- 複雑なリレーショナルデータベースシステムは、情報がシステム間で共有できない孤立したデータベースを生み出す可能性がある。







