ホームページ > データベース > mysql チュートリアル > リレーショナル データベースでオブジェクト指向の継承をどのようにモデル化できるでしょうか?

リレーショナル データベースでオブジェクト指向の継承をどのようにモデル化できるでしょうか?

Susan Sarandon
リリース: 2024-12-15 18:23:10
オリジナル
640 人が閲覧しました

How Can Object-Oriented Inheritance Be Modeled in a Relational Database?

リレーショナル データベースにおけるオブジェクト指向継承のモデル化

データ モデルを設計するとき、オブジェクトを表現する必要がある状況に遭遇することがあります。リレーショナル データベース スキームにおける指向性の継承。一般的なシナリオの 1 つは、テーブルに製品の価格設定に関連するフィールドがあり、メインの製品テーブルから特定の属性を継承している場合です。

これに対処するために、著名なソフトウェア アーキテクト Martin Fowler が著書『Patterns of Enterprise』で広範なガイダンスを提供しています。アプリケーション アーキテクチャの本。 Fowler が説明した 3 つの主な継承マッピング手法を次に示します。

  1. 単一テーブルの継承:

    • すべてのサブクラスと基本クラスは次の場所に格納されます。単一のテーブル。
    • 識別子の列は、各テーブルのサブクラスを示します。 row.
  2. クラス テーブルの継承:

    • 基本クラス テーブルが存在し、各サブクラスには独自のテーブルがあります。
    • 基本クラスのテーブルには共有属性が含まれますが、サブクラス テーブルには一意の属性が含まれます属性。
  3. 具体的なテーブルの継承:

    • 各サブクラスには、すべての必要な属性を含む独自のテーブルがあります。
    • 基本クラスのテーブルは存在せず、すべてのテーブルは別個のものとみなされますentities.

どのアプローチを使用するかは、特定の要件と制約によって異なります。決定を下す前に、各手法の長所と短所を慎重に検討してください。

さらに詳しく知りたい場合は、書籍の継承マッパーに関するセクションを参照してください。これにより、マッピングの原則をより深く理解できます。

以上がリレーショナル データベースでオブジェクト指向の継承をどのようにモデル化できるでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート