Geachte,

Ik moet de volgende opdracht maken

Voor een adventurespel met een onbekend aantal deelnemers moet voor iedere deelnemer bijgehouden worden:

- waar bevind hij zich
- wat heeft hij aan attributen
- met wie heeft hij verbinding(positief of negatief). Simpel gezegd wie is vriend en wie is vijand.

Tevens moeten een aantal landschapseigenschappen worden bijgehouden:
- welk type landschap(berg, eiland, woestijn)
- Grafische informatie over landschap
- Bijzonder eigenschappen dwz iets extras wat je boven een standaardlanschap van het type kan verwachten.
bijvoorbeeld in een woestijn een oase of in een bos een toren.

Voor deze opdracht moet ik bepalen uit welke tabellen deze database moet bestaan. Ik dacht het volgende

Deelnemer(deelnemer, locatie)
Landschap(beginlocatie, eindlocatie, landschap)
Grafische informatie(landschap, grafische informatie)
Bijzondere eigenschappen( bijzondere eigenschappen, locatie)

Echter op de atributen en verbinding loop ik vast, iemand een idee hoe ik dit zou kunnen inrichten in tabellen?
Typische one-to-many relaties dus extra tabel. Bijvoorbeeld met de attributen sla je deelnemer en het attribuut op. Voor elk deelnemer-attribuut krijg je dus een record.
Voor de relaties identiek, hoewel je daar even op moet letten op of relaties altijd twee kanten op gaan. Dus is de relatie 1-2 gelijk aan 2-1?
Dank voor uw reactie,

dus dan zou het er ongeveer als volgt uit komen te zien:

Deelnemer(deelnemer,lid ID, locatie)
Landschap(beginlocatie, eindlocatie, landschap)
Grafische informatie(landschap, grafische informatie)
Bijzondere eigenschappen(bijzondere eigenschappen, locatie)
Attributen(attributen, attributen ID)
Deelnemer attributen(lid ID, attributen ID)
Vriend(lid ID, lid ID)
Vijand(lid ID, lid ID)

De onderste twee zitten mij nog niet echt lekker maar weet niet echt hoe ik dit beter op kan lossen
Ik zou geen vriend en vijand tabel gebruiken, maar alleen een 'relatie' tabel (of hoe je die ook wilt noemen). Daarin neem je twee gebruikers op en wat voor relatie ze hebben (0 = goed, 1 = fout). Dit kan je dan eventueel nog uitbreiden met meer types. Zolang gebruikers niet zowel vriend als vijand kunnen zijn is dit prima.
Even nog wat aanvulling op Erwins opemerking.
Maak een onderscheid tussen je tabel en kolomnamen, en gebruik in geen van beide spaties en alleen alfanumerieke karakters of _
Dus bv tabel [i]attributen[i]
- attribuut_id
- attribuut
danku voor de reacties, gaat helemaal goed komen nu!


[size=xsmall]Toevoeging op 14/01/2013 19:09:38:[/size]

Even ter controle, in deze casus zit hetzelfde probleem, heb ik dit zo ongeveer goed opgelost?

Klanten(klant_id, naam, postcode, huisnummer)
Woonplaatsen(bcode, ecode, woonplaats)
producten( product_id, product_beschrijving, prijs)
Kortingsschemas( kortingschema, kortingschema_id)
klanten_kortingschemas(klant_id, kortingschema_id)
Bestellingen(bestelling, bestelling_id)
bestelling_ids(bestelling_id, product_id)


mvg,

Gertjan

Reageren