注:画像は、私は、このデータベースの設計に問題があるズーム冗長性の問題を避けるためのデータベース設計:コンベンションまたは異なるデザインを使用しますか?
を可能にするクリック可能です、私は別の解決策を持っていますが、それらのどれも十分な私をsatisfactません。
このソフトウェアは、製品のコンフィグレータに関するものです。このコンフィギュレータを使用して、価格を引き上げるすべての機能を選択できます。
これは、私がユーザーに提示しなければならないデータです。
- 価格を持っていない余分なこのタイプの、そのすべてのエキストラの料金を持っているパッケージの内側にマージされます:何私に問題を与えていることはエキストラの2種類があるという事実です。 (リラックス[A123]は価格、最初のイメージのパッケージの例です)
- このタイプの余分な価格はパッケージに含まれていないため、価格はありません価格のないパッケージの例)
ここでは、私はsatisfactていないよ、私の現在の設計、次のとおりです。
(グループのみアップエキストラにあるExtrasCategoryを無視)
最大の問題は、価格がなくても各エクストラ(クラスは今)がパッケージに属していることです。
しかし、各パッケージの料金はBoatごとに異なる場合がありますので、別の価格を設定する必要があります。各エキストラは "基本" パッケージを持っている
- :
は、私はこのような何かをしたいです。
- パッケージには、我々はパッケージ価格を持っていない場合は、我々はこの中しかしエクストラ
の「基本」パッケージを使用することができ、各ボート
どうすればこの問題を解決できますか?
編集1: Ok私は自分が望むものをより良く説明する画像を作成しました。私はBoatExtraが持っていない場合、余分な( "追加パッケージ"で) "デフォルトパッケージ"が必要です。
を望んでいる私は気...左側にその部分を読み取ることができないです。私が理解していれば、 "パッケージ"を文字列として扱うことをお勧めします。これは良い考えです。あなたがカテゴリとパッケージについて話しているなら、2つの異なる名前です(よくともにbtw) –
http://i.stack.imgur.com/Jrrkv.png – vimdude
あなたのイメージを今見ている。 **編集**カテゴリとパッケージは2種類ありません。カテゴリを無視すると、そのような冗長性の問題はありません。問題は、私が2倍のパッケージをリンクすることです(問題の編集を見てください)。 –