Frage

Ich bin versucht, ein Lebensmittelgeschäft zu modellieren. Im Laden gibt es mehr „Gänge“. Jeder „Gang“ hat eine Gruppe von „Kategorien“ von „items“ es speichert. Jede „Kategorie“ kann nur zu einem „Gang“ gehört. Jedes „item“ kann nur eine „Kategorie“ haben.

Das Datenmodell scheint gerade nach vorne zu mir:

  • Eine "Gang" Tabelle mit einer ID und Beschreibung
  • A "Kategorie" Tabelle mit einer ID, Name und ein AISLE_ID, die den "Gang" table
  • refernces
  • Ein "Punkt" Tabelle mit einer ID, Name, Beschreibung und eine CATEGORY_ID, die Verweise "Kategorie"

Das Objektmodell ist, wo ich brauche Hilfe:

  1. Ein Aisle-Objekt kann eine Liste der Kategorie und Item-Objekte in ihm haben.
  2. Ein Aisle-Objekt kann eine Liste der Kategorie Objekte. Eine Kategorie Objekt kann eine Liste von Item-Objekte in ihm haben.
  3. Ein Aisle können eine Liste von Item-Objekte haben. Eine Kategorie Objekt kann eine Liste von Item-Objekte haben.

In jedem Fall wird ein Punkt logisch ein Category-Objekt in ihm haben. Ich habe einen DAO für jede Domain-Objekt, so abhängig von der Art und Weise es fertig ist, ändert sich die SQL ein wenig. Irgendwelche Gedanken?

War es hilfreich?

Lösung

ich für Wahl # 2 stimmen. Macht mehr Sinn als # 1 oder # 3.

Denken Sie, die Beziehungen müssen bidirektionale sein? Sollte ein Artikel müssen in der Lage sein, die ihre Mutter Kategorie, um herauszufinden, und Großeltern Aisle sind?

Andere Tipps

würde ich mit Wahl # 2 gehen.

Ein Aisle Hauptanliegen ist, die Kategorien in ihr enthalten sind. Es soll bis zu der Kategorie Klasse zu bestimmen, welche Artikel Mitglieder sind. Dies hält die Abstraktionsebene konsistent in jedem Objekt - wo Aisle ist das höhere Ebene Objekt ist Kategorie eine etwas detaillierteren Ebene und Ordnungspunkt ist die detaillierteste.

Nummer 2 ist am sinnvollsten, wenn diejenigen, Ihr sind nur drei Optionen.

Ich denke, wenn ich dieses Modell zu erstellen, würde ich das folgende Modell (kleine Änderung, nur versuchen, so nah an Ihre Ideen wie möglich zu bleiben) verwenden:

Ein Objekt Gang eine Liste der Kategorie Objekte haben können, kann eine Kategorie Objekt eine Liste der Artikel in ihr enthaltenen Objekte haben, und ein Element mit einer Kategorie und einem Gang verbunden.

Meine Modifikation scheint mehr auf der Datenseite zu sein.

Der Grund, warum ich, dass getan hätte, liegt daran, dass jemand sagt: „Hey ich bin auf der Suche nach diesem speziellen Punkt, der Gang in ist?“ - 1-Lookup würden Sie die Antwort. während mit dem Datenmodell, müssen Sie 2-Lookups.

Mindestens das ist, wie ich daran denke.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top