0

私は、大学の宿泊施設のデータベースをモデル化して実装するための演習に取り組んでいます。

これが私がこれまでに持っているER図です:

小胞体図

仕様には、ホールには飼い葉桶があり、アパートには部屋数があると書かれています。それ以外の場合、属性は同一です。請求書と住所には、フラットまたはホールの住所が必要です。

フラット エンティティとホール エンティティを同じテーブルに格納する必要がありますか? 1 つのエンティティ (場所) を他の 2 つのエンティティ (場所) にリンクするには、他にどのような方法がありますか?

4

1 に答える 1

0

次のタグの情報タブを検索します:

あなたのような単純なケースでは、single-table-inheritance が最善の策かもしれません。すべての行に適用されない属性にいくつかの NULL がありますが、それは大きな問題にはなりません。

複雑なケースでは、class-table-inheritance の方が適切に機能しますが、少し余分な作業が必要です。

Shared-primary-key は、「is a」関係の 1 対 1 の性質を強制するために、class-table-inheritance で使用できる追加の手法です。

于 2013-03-29T19:47:57.617 に答える