パーツを保持するデータベース(ここでは簡略化)を設計しています。各パートには固有のPartIDがあります。データベース内の複数のエンティティにデータをリンクする
- :
それは、私たちは各コンテナのための特定の異なる情報を持っていることが重要です
- 再利用可能なバッグ
- ボックス
- パレット:私たちは別の容器にパーツを保存することができますバッグ: ID、マテリアルタイプ、ボリューム、ハンドタイプ
の - ボックス: ID、高さ、幅、長さ
- パレット: ID、DateCreated、NumberOfTimesUsed、色
私の質問:に部品をリンクするための最良の方法は何ですかこれらの複数のコンテナエンティティ?
私の考えでは、概念的に最も簡単な方法は、PartテーブルにContainerTypeとContainerIDの列を作成することです。私はそれをすることを躊躇しています。なぜなら、それは違法なので、複数のテーブルに対する強制されていない外部キーを持つ列を持つ参照整合性を本質的に壊すからです。
コンテナのすべての可能なプロパティを持つ大きなコンテナテーブルを作成することもできますが、それは非常に面倒です。
何か助けや指導をいただければ幸いです!
個人的には、ID、ContainerType、MaterialType、Volume、HandleType、Height、Width、Length、DateCreated、NumberOfTimesUsed、およびColorの列を持つ 'container'テーブルを作成します。あなたは1トンのNULL値を持っていますが、それは非常に簡単に結合でき、パーツテーブルで多くのデータを繰り返すことを避けることができます。あなたはID番号に参加するだけです。 –