シングルテーブル継承とは何ですか?

シングルテーブル継承は、通常データベースプログラムに含まれていないオブジェクト指向の継承が、リレーショナルデータベースに対してエミュレートされるコーディング方法です。これを使用することにより、ユーザーは単一のテーブル内の多くの異なるラベル間の関係を確認できるようになり、ユーザーがデータを消化または追加しやすくなります。多くのnullフィールドがある場合、または多数の関係がある場合、単一のテーブル継承を使用すると、高度なデータベースデザイナーも混同する予期しない結果が返される可能性があります。このデータベース継承スキーマを使用すると、単一のテーブルには階層的な方法でデータが表示されます。

リレーショナルデータベースは、あるデータのグループを別のグループに関連付け、通常は階層マップを持つデータベースです。たとえば、誰かがリレーショナルデータベースを通して本を探している場合、通常、著者、ジャンル、最初の本の文字、次に本のリストのフィールドを見つけます。通常の場合、各フィールドには独自のテーブルがあり、theテーブルは、ユーザーをあるフィールドから別のフィールドに媒介する以外にめったに相互作用することはめったにありません。

単一のテーブル継承では、すべてのフィールドが1つのテーブルに表示されます。これはずっと見やすく、ふるいやすいです。テーブルに表示されるすべてのデータは、上から下部に移動します。これは、著者が単一のテーブルの上部にあり、本の最初の手紙が下にあることを意味します。

データベースデザイナーがコーディングに精通していない限り、単一のテーブル継承モデルの作成は、最初は困難です。データベースからマップを作成して、オブジェクト指向のプログラミングスキーマでオブジェクトを分離するようにすると、通常これが行われます。いくつかのクラスが必要です。そうしないと、これはすべてを単一のテーブルにグループ化するわけではありません。

2種類の問題により、単一のテーブル継承が適切に機能しないようにする可能性があります。 1つは、オブジェクトがヌル値を表す場合です。これがoの場合CCURS、その後、ヌル値は、継承テーブルに貴重なデータが散らばっています。これは、テーブルが関連情報を表示することを意味しますが、数行ごとに、またはnull値が発生することが多いことを意味します。「null」という言葉は、近くまたは別の値の下に表示されます。

マッピングされているオブジェクトには多くの階層、特に類似していない階層がある場合、これは単一テーブルの継承に問題を引き起こす可能性があります。多くの階層があるため、デザイナーが1つを逃してリレーショナルエラーを引き起こす可能性があります。階層が類似していない場合、リレーショナルデータベースは、データセット間で行われたマッピングを理解するのに苦労する可能性があります。

他の言語

この記事は参考になりましたか? フィードバックをお寄せいただきありがとうございます フィードバックをお寄せいただきありがとうございます

どのように我々は助けることができます? どのように我々は助けることができます?