2016-08-27 2 views
0

私は食品用のデータベースデザインを作成していますが、データベースで製品タイプとカテゴリをデザインする方法を決めるには迷っています。食品のリレーショナルデータベーステーブル - 異なるカテゴリを指定する

は私が私の現在のデータベース構造を共有しましょう: food product table and its dependencies

は今現実の例を考えるをすることができます。 チーズ製品を取るといいでしょう。そして、我々はちょうどいくつかの味のスモークチーズと言う。それからそれは乳製品であると仮定することができ、それは次のようになります:乳製品 - >チーズ - >スモーク - >ガーリックフレーバー

私は囲まれた別の食品のカテゴリーとタイプのリストを持っている: food categories and types

私はそれの一部だけを一覧表示しようとしていた、それは私の視点から非常に複雑になります。 食品飲料/ドリンク、多分私はパン、乳製品、果物&野菜やなどのようなこれらのカテゴリで始める必要があります:食品の

2つの主なカテゴリがあることでしょうか?私は乳製品に入れて、チーズのような食べ物と飲み物を持っています。。私たちが今のところチーズだけを食べれば、私はグーグルで、66種類のチーズがあるかもしれません。さらにcan be found here

私は多分一つのテーブルにすべてを加えることができると知っていますが、私は非常に多くの異なるカテゴリとタイプを持ち、お互いに繰り返すので、どのようにしてすべての食べ物カテゴリ?

私は結論付けることができますはい私はすべてのカテゴリとタイプを正しく構成する方法はまだわかりませんが、あなたが提案できるテーブル構造はありますか?

明らかに不明な点がある場合は、私にお知らせください。その点を明確にします。

答えて

0

私の見解では、ラベルとカテゴリの組み合わせを探しています。あなたの事例に十分柔軟なシステムは、製品:ラベルとラベル:ラベルの1:Nの関係として実装することができます。

あなたのチーズの例は次のように標識することができる。この方法:

Organic type -> Dairy -> Cheese 
Cooked -> Smoked 
Flavored -> Garlic flavor 

ラベルに新製品を追加し、ラベル上の全文検索を可能にするアプリケーションは、簡単にする必要があります。一方、エンドユーザーは、一般的に乳製品やチーズをフィルタリングする可能性があります。

0

あなたが持っている食品のカテゴリは、階層構造で整理されている方がよいでしょう。リレーショナルデータベースとしては、製品の構成方法によっては重複することになります。理想的には、多対多のすべてのコストを回避する必要があります。

おそらく、データベースの目的に基づいて関係を作成するほうがよいでしょう。たとえば、これがスーパーマーケットの場合は、ベンダーと販売する製品に基づいてリレーションシップを作成し、製品を受け取る部門に関連付けることができます。どのような種類の食品(乳製品、肉、果物など)で製品を分類するラベルやタグを追加します。 これにより、プロセスに基づいたより機能的なシステムを作成し、タグを追加することができます。人間。

私の提案は、これがどのように使用され、プロセスに適合し、デザイン(スキーマ、リレーションシップ)に焦点を合わせるかについて考えています。次に、ユーザーに焦点を当て、別のレイヤーを追加して、簡単に作業できるようにします(ラベル、タグ)

これは意味がありますか?

+0

また、データベースの目的は何ですか?どのように使用されますか? その情報でデザインを提案する方が簡単です –

関連する問題