私は5つのテーブルを持っています。それらは次のとおりです。
- 顧客タイプ
- お客様
- 領域
- 事業
- 車両
これは、テーブル間の関係の説明です。最初のテーブル、つまりcustomer_typeの場合、データ/行は、個人、企業、政府などの値である顧客タイプで構成されます。
顧客のタイプに応じて、この特定の顧客が他のテーブルで作成できるものに関するいくつかのルールがあります。ルールは次のとおりです。
- 顧客のタイプが個人的なものである場合、顧客はリージョンとプロジェクトを持つことはできません(作成することはできません)。
- 顧客のタイプが企業の場合、顧客はリージョンを持つことはできません(作成することはできません)。
- また、顧客のタイプが政府である場合、顧客は地域、プロジェクト、および自動車にリンクできます。
1つの地域は、複数のプロジェクトで構成できます。特定のプロジェクトには、複数の車を割り当てることができます。
ただし、前に説明したように、顧客のタイプが個人である場合、顧客には地域とプロジェクトがありません。お客様との関係は直接車です。
顧客のタイプが企業の場合、最初の顧客はプロジェクトと関係があり、次にプロジェクトは自動車と関係があります。政府と同様に、最初の関係は地域との関係であり、次に地域には関係プロジェクトがあり、プロジェクトには自動車との関係があります。
+Customer Type -> Customer -> Region -> Project -> Car : table relation if customer type government.
+Customer Type -> Customer -> Project -> Car : table relation if customer type corporate.
+Customer Type -> Customer -> Car : table relation if customer type personal.
どのようにこれを解決することができますか、私は何のようなこの場合のための良いテーブルデザインを意味します。冗長な説明でごめんなさい