0

私のDBには次の部分があります。

project (id, name, color, ...)
unit (id, name, width, height, ...)
  • 各プロジェクトは1つ以上のユニットで構成されています
  • 各ユニットは1つのプロジェクトに属しています(プロジェクトとの1:N関係)

そして今、難しい部分が来ます:

事前定義されたユニットが保存されており、簡単に選択できます(名前/幅/高さが固定されています)。

  • 事前定義されたユニットは、複数のプロジェクトに含めることができます
  • プロジェクトには、いくつかの事前定義された単位を含めることができます(プロジェクトとのM:N関係)
  • 事前定義されたユニットは、ユニットのサブタイプです(一般化)
  • 備考:プロジェクトがすでに存在し、デフォルトの単位がいくつかある場合、将来、デフォルトの単位のデフォルトのプロパティを編集した場合に備えて、単位設定の値を変更したくありません。

最後の部分だけのために、DBを設計するための適切で実用的な方法を見つけることができません。

前もって感謝します

4

1 に答える 1

0

事前定義されたユニットを保持するために、と呼ばれる別の構造が必要だと思いますtemplates。このアプローチでは、データをにコピーprojectすることにより、事前定義された単位がに割り当てられます。 units

必ず、事前定義unitsされていることを示すフラグなどを用意してください。したがって、変更することはできません。

于 2013-03-12T20:43:25.517 に答える