Zero Grav
Legacy Member
Ik heb een gedachtengang probleempje in verband met een MySQL database van een website waar ik aan bezig ben.
Het is een site waar wagens op staan en bij het toevoegen van een nieuwe wagen (of wijzigen van een bestaande) kunnen opties aangevinkt worden uit een lijst (airconditioning, parkeersensoren, ..). Die opties komen ook uit een tabel van de database. Later moet er ook bij de zoekfunctionaliteit gefilterd worden op die opties.
Optie 1:
Oorspronkelijk was het idee om een database te gebruiken met de volgende structuur.
Waarbij ik dan gewoon alle opties kan ophalen in een lijst, en als em ook in cars_options zou zitten aanvinken en met een join wel die search zou kunnen forceren. Maar bij het updaten van de specs van de wagens zoudt ge dan onmogelijk zomaar kunnen weten wanneer ge een insert/delete zoudt moeten doen van een row in cars_options.
Optie 2:
Dan was het idee om de options tabel te behouden, maar in plaats van cars_options gewoon een extra kolom in cars (hier niet getoond) waar door middel van een json encoded array/string de aangevinkte options>id werden bijgehouden. Heel gemakkelijk om weg te schrijven en uit te lezen leek mij. Maar hoe gaat ge dan de zoekfunctie implementeren?
--
Simpele vraag eigenlijk: Zijn dit de beste oplossingen die voorhanden zijn of is er ergens iets dat ik op het moment over het hoofd zie? Ik hoop het ten zeerste.
Het is een site waar wagens op staan en bij het toevoegen van een nieuwe wagen (of wijzigen van een bestaande) kunnen opties aangevinkt worden uit een lijst (airconditioning, parkeersensoren, ..). Die opties komen ook uit een tabel van de database. Later moet er ook bij de zoekfunctionaliteit gefilterd worden op die opties.
Optie 1:
Oorspronkelijk was het idee om een database te gebruiken met de volgende structuur.
Code:
options cars_options
- id - id (eigenlijk zelfs niet nodig als ik zo bekijk)
- option - car_id
- option_id
Optie 2:
Dan was het idee om de options tabel te behouden, maar in plaats van cars_options gewoon een extra kolom in cars (hier niet getoond) waar door middel van een json encoded array/string de aangevinkte options>id werden bijgehouden. Heel gemakkelijk om weg te schrijven en uit te lezen leek mij. Maar hoe gaat ge dan de zoekfunctie implementeren?
--
Simpele vraag eigenlijk: Zijn dit de beste oplossingen die voorhanden zijn of is er ergens iets dat ik op het moment over het hoofd zie? Ik hoop het ten zeerste.
En met veel queries / splitten van uw resultaten.