ID nummer van de ene tabel naar de andere

Status
Niet open voor verdere reacties.

jelleruben

Gebruiker
Lid geworden
11 nov 2006
Berichten
443
Hallo allemaal,

Ik heb twee tabellen, 1 tabel waar de klant gegevens in zitten
en een tweede tabel met bestemmingen.

Nu is het zo, dat in de tabel bestemmingen ook de klant gegevens staan.
Ik wil nu dat de klant gegevens uit het tabel klant gegevens komt.

Beide tabellen bevatten een ID nummer (een unieke nummer).

In de tabel bestemming heb ik een kolom klant toegevoegd.
Is er een snelle manier om in deze kolom de ID nummers van de klant neer zetten (die uit
de tabel klant komt?

In het voorbeeldje gaat het maar om een kleine aantal, maar in werkelijkheid gaat het
om een tabel van 1375 records.
 

Bijlagen

Dat kun je doen met een Bijwerkquery:

UPDATE tbl_klant INNER JOIN tbl_bestemming ON (tbl_klant.woonplaats = tbl_bestemming.woonplaats) AND (tbl_klant.naam = tbl_bestemming.naam) SET tbl_bestemming.klant = [tbl_klant].[id];

Omdat je demotabel maar twee koppelvelden heeft (naam en woonplaats) loop je de kans dat er niet te matchen records opduiken. Een combinatie Naam+Postcode+Huisnummer is bijvoorbeeld al veel betrouwbaarder.
Pas wel eerst de eigenschappen van het veld Klant aan, want het ID veld in Klanten is numeriek, en het veld Klant in Bestemming is Tekst, en die twee kun je dus niet aan elkaar koppelen straks.
 
Als ik deze code probeer dan krijg ik een compileer fout. op de term INNER

Ik dacht zelf dat ik wel uit zou komen, als ik een klein voorbeeldje maakte maar
dit is helaas niet het geval.

Mijn tabellen heten in het bestand tbl_kandidaten en tbl_aanmelding.

In tbl_landidaten staat de ID nummer voor elke kandidaat. en die moet dus
overgezet worden naar tbl_aanmelding. daarvoor heb ik een kolom kandidaat-ID
aangemaakt.

De gegeven waar op gecontrolleerd kan worden zijn:
achternaam, voorletters, postcode, woonplaats
 
Doet-ie het wel in de test db die je hebt gepost? Want ik probeer 'm net weer uit, en hij doet het prima!
 
Probeer deze anders eens:

UPDATE tbl_kandidaten INNER JOIN tbl_aanmelding ON (tbl_kandidaten.naam = tbl_aanmelding.naam) AND (tbl_kandidaten.Postcode = tbl_aanmelding.Postcode) SET tbl_aanmelding.[kandidaat-ID] = [tbl_kandidaten].[kandidaat-ID];
 
Of ik doe iets verkeerds, want ik
Ik zet deze code, op een formulier, achter een button. of is dat niet de bedoeling?

edit: en ook als ik in de demo probeer krijg ik dezelfde fout. Of moet er een bepaalde verwijzing aan?
 
Laatst bewerkt:
De code komt letterlijk uit een query, dus die moet je ook achter een knop kunnen hangen.
Kun je de volledige code posten?
 
Eh ik heb geen codes verder,

Ik heb alleen twee tabellen, en een formuliertje met die knop, waar dus die code achter hangrt.

EDIT hebbes, Ik heb in het SQL venster gezet, daar moet de code in.
 
Laatst bewerkt:
Als je de code onder een knop wilt laten draaien, moet je de sql uiteraard onder de juiste opdracht zetten:
DoCmd.RunSQL (UPDATE tbl_kandidaten INNER JOIN tbl_aanmelding ON (tbl_kandidaten.naam = tbl_aanmelding.naam) AND (tbl_kandidaten.Postcode = tbl_aanmelding.Postcode) SET tbl_aanmelding.[kandidaat-ID] = [tbl_kandidaten].[kandidaat-ID]; )
bijvoorbeeld.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan