Voor een eerste poging ben je lekker bezig :thumb:. Maar een paar basis fouten zitten er vrees ik wel in, dus laten we die gelijk maar even doornemen. Het lijkt met het handigst als je die zelf probeerrt op te lossen, want daar leer je het meeste van

.
1. Het formulier [Leerlingen invullen] (ik zou overigens de naam veranderen; leerlingen bekijken is hetzelfde als leerlingen invullen, dus dat doe je op hetzelfde formulier) bevat maar 2 velden. Je kunt dus de klas niet invullen:
Oplossing: koppel gewoon de
tabel [Leerlingen] aan het formulier en niet een halve query. Sowieso biedt een query voor dit formulier geen enkele winst, dus waarom überhaupt een query?
2. De tabel [Geslacht] mag an sich wel, maar gebruik ik zelf nooit. De reden: je hebt zelden meer dan 2 geslachten nodig. Ik kan er hooguit nog één bij bedenken, en dan heb je het wel gehad.
Alternatief: Gebruik Lijst met waarden, en geen tabel. Vul vervolgens de 2 of 3 waarden met de hand in. Kun je ook gewoon een tekstveld gebruiken. Hou het simpel, kortom

.
3. Je hebt nutteloze relaties gemaakt; relaties hebben pas zin als je Referentiële integriteit afdwingt. Dat doe je nu niet, en dan kun je net zo goed [GeslachtID] aan [Aantal ronden] koppelen. Ja, dat is net zo zinloos

.
Handeling: Dubbelklik op de relatielijnen, en zet <Referentiële integriteit afdwingen> aan. Lukt dat niet, (kun je niet opslaan) dan heb je sowieso een groot probleem met de koppeling.
4. Hoeft geen probleem te zijn, maar ik leg het probleem maar even voor.... Een leerling zou (in mijn ogen) meerdere sponsoren moeten kunnen hebben (dat kan ook nu) maar andersom moet dat volgens mij óók kunnen, en dat kan nu niet! Dus iemand die al een leerling sponsort, kan niet nog iemand sponsoren. Ik zou dat aanpassen door er een extra tabel tussen te hangen. Hou zo'n systeem zo flexibel mogelijk, want je moet toch kunnen uitbreiden!
5. Sluit op 4 aan: hoe vaak zou je zo'n sponsorloop willen kunnen gebruiken? Nu kan dat maar één keer, want je slaat de verschillende jaargangen niet op. Dus volgend jaar kun je opnieuw beginnen!
Ik zou de db dus zodanig uitbreiden met extra tabellen dat je ook meerdere sponsorlopen kunt invoeren.
6. Je hebt nu 2 velden voor één ding: het bedrag. Dat zou ik anders doen en ik zou dus eén valutaveld maken voor bedrag, en een extra veld (met keuzelijst) waarin je de verschillende sponsoropties vastlegt. Dus nu: <per ronde> + <Vast bedrag>. Kun je ook heel makkelijk straks berekeningen maken, wat nu een stuk lastiger wordt, en je kunt ook andere acties vastleggen, zoals <per kwartier> etc.