Ik zit met de volgende kwestie:
Voor een website moeten er allerlei gegevens ingevuld worden over objecten. Objecten staan in de database, Types en fabrikaten ook. Maar de mogelijkheid dat mensen objecten, types of fabrikaten melden die niet in de database voorkomen moet ook geboden worden.
Oftewel, bij het formulier wordt een select-box gegenereerd met daarin (bijv.) alle objecten, en 1 veld "Anders, nl:"
Als die laatste geselecteerd is, kan men in een text-veld invullen wat het dan wel moet zijn.
Nu moeten deze gegevens in een database opgeslagen worden (uiteraard). Die tabel noemen we even "toegevoegd".
Oftewel, bij het aanbieden van dergelijk object, hebben we een tabelletje "toegevoegd" waarin (o.a) een objectID, een typeID en een fabrikaatID staat.
Wat nu als iemand "Anders, nl" invult? Dan vullen we bijvoorbeeld bij objectID "-1" in, en in een ander veld een ID naar een verwijzing in een andere tabel waarin alle ingevulde "Anders, nl:"-velden staan ofzo... 't Spreekt mij alleen niet zo aan, ik vind 't niet netjes.
Een andere oplossing is 1 extra vlaggetje aan de object-tabel toevoegen, waarin staat of het een object is wat een user heeft ingevuld dmv "Anders nl", zodat dat object ook een gewoon objectID krijgt, en netjes in de "toegevoegd" tabel kan staan. Hetgeen de gebruiker invult in het textveld, wordt dan dus gewoon toegevoegd als nieuwe record met zijn eigen ID in de object-tabel.
Nog een andere oplossing is hetzelfde idee, alleen dan een andere tabel met de door users ingevulde objecten, en in de tabel "toegevoegd" dat extra vlaggetje of het om een "Anders nl"-object gaat of een object uit de bestaande database.
Andere oplossingen kunnen misschien nog wel bedacht worden mbv n:m relaties of misschien wel enorm goeie andere ideeen
Nou is mijn vraag aan jullie: brainstorm hier eens over? Wie heeft er goede ideeen en/of tips?
ben benieuwd
edit:
___________________________________________________
Op verzoek eventjes een stukkie van het database model
Objecten:
Typen
Fabrikaten
Restanten (dus de zgn. "toegevoegd" tabel)
Het eigenlijke probleem is dus wanneer iemand iets invult bij "anders, nl", waar die ingevulde data het beste kan staan in een database ontwerp. snappu?
___________________________________________________
Voor een website moeten er allerlei gegevens ingevuld worden over objecten. Objecten staan in de database, Types en fabrikaten ook. Maar de mogelijkheid dat mensen objecten, types of fabrikaten melden die niet in de database voorkomen moet ook geboden worden.
Oftewel, bij het formulier wordt een select-box gegenereerd met daarin (bijv.) alle objecten, en 1 veld "Anders, nl:"
Als die laatste geselecteerd is, kan men in een text-veld invullen wat het dan wel moet zijn.
Nu moeten deze gegevens in een database opgeslagen worden (uiteraard). Die tabel noemen we even "toegevoegd".
Oftewel, bij het aanbieden van dergelijk object, hebben we een tabelletje "toegevoegd" waarin (o.a) een objectID, een typeID en een fabrikaatID staat.
Wat nu als iemand "Anders, nl" invult? Dan vullen we bijvoorbeeld bij objectID "-1" in, en in een ander veld een ID naar een verwijzing in een andere tabel waarin alle ingevulde "Anders, nl:"-velden staan ofzo... 't Spreekt mij alleen niet zo aan, ik vind 't niet netjes.
Een andere oplossing is 1 extra vlaggetje aan de object-tabel toevoegen, waarin staat of het een object is wat een user heeft ingevuld dmv "Anders nl", zodat dat object ook een gewoon objectID krijgt, en netjes in de "toegevoegd" tabel kan staan. Hetgeen de gebruiker invult in het textveld, wordt dan dus gewoon toegevoegd als nieuwe record met zijn eigen ID in de object-tabel.
Nog een andere oplossing is hetzelfde idee, alleen dan een andere tabel met de door users ingevulde objecten, en in de tabel "toegevoegd" dat extra vlaggetje of het om een "Anders nl"-object gaat of een object uit de bestaande database.
Andere oplossingen kunnen misschien nog wel bedacht worden mbv n:m relaties of misschien wel enorm goeie andere ideeen
Nou is mijn vraag aan jullie: brainstorm hier eens over? Wie heeft er goede ideeen en/of tips?
ben benieuwd
edit:
___________________________________________________
Op verzoek eventjes een stukkie van het database model
Objecten:
code:
1
2
| objectID (PK, autoincrement) name (varchar) |
Typen
code:
1
2
| typeID (PK, autoincrement) name (varchar) |
Fabrikaten
code:
1
2
| fabricID (PK, autoincrement) name (varchar) |
Restanten (dus de zgn. "toegevoegd" tabel)
code:
1
2
3
4
5
| restantID (PK, autoincrement) fabricID (FK) typeID (FK) objectID (FK) -- nog wat meuk over toegevoegde restant -- |
Het eigenlijke probleem is dus wanneer iemand iets invult bij "anders, nl", waar die ingevulde data het beste kan staan in een database ontwerp. snappu?
___________________________________________________
Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz