[MySql/php] Hardware shop database

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hoi,

Ik ben bezig met het ontwikkelen van een database voor een hardware winkel (voor ecommerce).
De bedoeling is dat ze dus alle producten in de database kunnen toevoegen onder de desbetreffende categorie.

categorie
--------------
catID
catnaam
status <---optie

dit is simpel. Nu de producten zelf
Je kan het simpel houden en alle producten in 1 tabel zetten. Nu ben je gedwongen om voor alle producten dezelfde attributen te gebruiken zoals beschrijving, prijs, voorraad enz.

Ik wil het dus anders doen. Elke product (van verschillende categorien) hebben verschillende attributen. Bijv. Harddisk : rotatiesnelheid, capaciteit enz. (deze heeft een monitor bijvoorbeeld niet)

Hoe kan ik nu het beste de database ontwikkelen?

Mijn oplossing (best wel moeilijk te realiseren):
1 tabel maken waarin alle producten zitten. hierin noteer je dan de attributen die ze allemaal gemeen hebben (prijs, beschrijving, merk) en dan apparte tabellen voor elk categorie.

Ik wil graag horen of dit een juiste oplossing is. Indien niet weten jullie dan andere oplossingen die simpelen en efficienter zijn?

Acties:
  • 0 Henk 'm!

  • Buzzman
  • Registratie: Juni 2000
  • Niet online
Ik zou een extra specificatie tabel doen:

spec
--------
spec_id
prod_id
spec_description
text

en dan met
code:
1
2
3
select spec_description, text 
from spec 
where prod_id = "product dat je wil laten zien"

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Maar dan kom krijg je een hele waslijst in spec. Dit is dan niet echt zinvol...
Zijn er geen andere mogelijkheden

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 18-09 17:06

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 25 December 2002 @ 19:18:
Maar dan kom krijg je een hele waslijst in spec. Dit is dan niet echt zinvol...
Zijn er geen andere mogelijkheden
:? Wat is er erg aan dat in een tabel een hele waslijst staat? Dat filter je er wel weer er uit met een query.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
Buzzman's oplossing lijkt me het beste. Maar je zou eventueel nog per categorie specs kunnen maken om ruimte te besparen, maar lijkt me ook niet echt zinvol

Verwijderd

Je zou het zo kunnen proberen:

Attributes
--------------
attID
attNAME
attVALUE
related_product

Dan doe je dus
select * from Attributes where related_product='$product_id'
en maak je er een mooi lijstje van. Je zou zelfs meerdere producten in related_product kunnen zetten voor producten met dezelfde eigenschappen.

Suc6

  • Alex
  • Registratie: Juli 2001
  • Laatst online: 20-08 21:38
Het is niet slim om de volgende indeling te maken(tabellen):
+producten
|
+harddisks
|
+printers
|
+......

Aangezien dat je dan als je iets selecteerd uit producten een nieuwe query moet maken om de rest uit de db te trekken :(. MySQL ondersteund nog steeds gee subquery's, he.
Wat je ook kan doen is dit:
Producten
-ID
-Type (bijv. 1= harddisk, 2= printer
-Naam
-Merk
-Prijs
-Alg_text
-Option1
-Option2

Bij een hard disk krjgje dus:
-ID=1
-Type=1
-Naam=80Mb
-Merk=Maxtor
-Prijs=99,99
-Alg_text=Dit is een verhalatje over dezxe super goede maxtor harddisk
-Option1=7200
-Option2=8Mb cache

Deze post is bestemd voor hen die een tegenwoordige tijd kunnen onderscheiden van een toekomstige halfvoorwaardelijke bepaalde subinverte plagiale aanvoegend intentioneel verleden tijd.
- Giphart

Pagina: 1