Gegevens uit één tabel aan meerdere tabellen toevoegen

Status
Niet open voor verdere reacties.

erik loosveldt

Nieuwe gebruiker
Lid geworden
3 jun 2010
Berichten
4
Hallo,

Ik heb een probleem dat volgens mij wel vaker moet voorkomen maar ik heb er nergens een oplossing voor gevonden.

Ik heb een database die volgende tabellen bevat: Classes en Students. Logischerwijs zijn dit met een 1-to-many link verbonden. Elke tabel heeft als sleutelelement een automatisch gegenereerd codenummer, resp. ClassID en StudentID. Class ID is voor de Students tabel een 'foreign key'.

Ik krijg nu van buitenaf een tabel binnen waarbij elk record zowel informatie van het class-niveau als van het student-niveau bevat. Ik wil deze informatie aan de database toevoegen. Daarvoor moet ik echter eerst de bijhorende classes toevoegen aan de Classes tabel. Pas daarna zou ik de students aan de tabel Students kunnen toevoegen. Het probleem is nu echter dat ik bij het toevoegen van de classes niet kan weten welke Class ID wordt aangemaakt. Ik kan dan ook de students niet toevoegen omdat de Class ID de verplichte link is met de Classes tabel.

Iemand een idee hoe ik dit probleem kan aanpakken?

Alvast bedankt!!
 
Volgens mij zou je de ID van de nieuwe tabel (tijdelijk) mee moeten nemen in je tabel classes om die vervolgens als referentie te gebruiken.

Succes,

Frank.
 
Heb je niet een koppeltabel Student-Classes nodig? En is dat niet precies de informatie die je krijgt aangeleverd? Als ik lees het verhaal zo lees, wil je de verkeerde tabellen aan elkaar knopen, vandaar dat ik denk dat je een extra tabel nodig hebt. In die tabel combineer je ClassID met StudentID om voor elke student een uniek record te maken. Daarbij ga ik er dan wel vanuit dat je elk Class record een eigen jaar(tal) geeft.
 
Heb je niet een koppeltabel Student-Classes nodig? En is dat niet precies de informatie die je krijgt aangeleverd? Als ik lees het verhaal zo lees, wil je de verkeerde tabellen aan elkaar knopen, vandaar dat ik denk dat je een extra tabel nodig hebt. In die tabel combineer je ClassID met StudentID om voor elke student een uniek record te maken. Daarbij ga ik er dan wel vanuit dat je elk Class record een eigen jaar(tal) geeft.

Ik snap niet zo goed waarom er hier een koppeltabel zou nodig zijn. Elke student heeft al een unieke record, in de Students tabel waar ook de Class ID in voorkomt.
De informatie die bij mij binnenkomt is in feite beperkter dan hetgeen ik in de database bijhoud. In de database hou ik informatie over meerdere classes met (mogelijks) meerdere studenten bij. De lijst die bij mij binnenkomt bevat altijd maar één student per klas. In principe zou dat dus perfect in één tabel, Classes, kunnen opgeslaan worden. Maar sommige informatie komt in mijn database nu eenmaal op het Students niveau terecht. Daarom wil ik in beide tabellen info opslaan.

Hoe dan ook, zoals FHG1969 voorstelde, het opslaan van de ID uit mijn tabel in de tabel Classes en op basis hiervan de link maken met Students, lijkt me de beste oplossing.

Hartelijk dank voor jullie hulp !
(Eventuele andere suggesties zijn altijd welkom...)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan