Hoe deel je je database in
Wat ik mij afvraag is hoe je nu je database goed inricht, bijvoorbeeld als we het hebben over een product.
Het product is bijvoorbeeld een kopje deze is in verschillende maten S,M en L te leveren in de kleur zwart en wit.
Maak je dan een kolom met product, maat en kleur of zijn er andere manieren?
Gr. Loek
Mogelijkheden genoeg. Maten en kleuren zijn eigenschappen en zou je daarmee dus ook als eigenschap kunnen opslaan.
Dan krijg je dus een tabel met eigenschappen. Door middel van een koppeltabel kan je dan meerdere eigenschappen aan een product koppelen.
Voorbeeld: een Levi's 1951 t-shirt (of wat dan ook). Verkrijgbaar in groen, geel en blauw in de maten S, M, L. Dat zijn dus al 9 combinaties van "eenzelfde" product. Van elk concreet product (groen M) kan het ook handig zijn om bij te houden hoeveel je deze op voorraad hebt.
Of denk aan een film: Groundhog Day. Verschillende formaten (DVD, Blu-ray) in verschillende uitvoeringen (director's cut, deluxe edition, collector's edition, steelcase).
Maar hoe je een database inricht hangt sterk af van het gedrag van de data. Vragen hoe je een database in het algemeen opzet voor producten is zoiets als vragen "hoe bouw je een huis". Tussen een blokhut en een villa zit ook een wereld van verschil.
Het is handiger (en zinniger) om dit soort vragen toe te passen op concrete(re) cases.
Gewijzigd op 29/09/2017 20:28:06 door Thomas van den Heuvel
Het zijn losstaande producten, ook altijd uitgegeven met losstaande EAN codes, dus dat is niet meer dan logisch.
Ben van Velzen op 29/09/2017 22:27:38:
Het zijn losstaande producten, ook altijd uitgegeven met losstaande EAN codes, dus dat is niet meer dan logisch.
Maar hoe je hier naar zoekt zou de indeling mede kunnen bepalen. Als je zoekt op "1951" wil je misschien niet X keer hetzelfde resultaat zien van alle uitvoeringen, maar liever één keer het t-shirttype.
Het gedrag van de data, of hoe je wilt dat deze zich gedraagt, zal bijdragen aan de vorm waarin deze gestructureerd is.