Ich denke, du brauchst 3 Tabellen:
Artikel
Gruppen
ArtGruppen
Ein Artikel kann in mehreren Gruppen enthalten sein und eine Gruppe kann mehrere Artikel enthalten.
Also liegt eine N:M Verknüpfung vor, die man über eine Hilfstabelle (hier ArtGruppen genannt) auflösen muss.
Die Tabelle ArtGruppen enthält die Primärschlüsselfelder von Artikel und Gruppen.
Bei den Gruppen liegt ein hierachischer Selbstbezug vor.
Ein Gruppen kann mehrere Untergruppen haben.
Dies wird Datenbanktechnisch über ein
Parentfeld abgebildet:
Code:
ID | Name | Parent
1 | Lager | NULL
2 | Farben | 1
3 | Tapeten | 1
Vielleicht sollte man den Artikeln auch zusätzliche Attribute vergeben.
Ein Attribut könnte z.B. die Farbe oder das Material (Papier oder Folie) sein.
Die Attribute werden dann in einer zusätzlichen Tabelle gespeichert:
Code:
Tabelle AtikelAttributs
=========================
IdArtikel | IdAttribut| AttributValue
5 | 3 | grün
5 | 12| Papier