Ik wil graag tabellen reorganiseren, omdat ik er achter kwam dat het veld Telefoonnummer van een relatie beter in een ander tabel past. Ik werk met Access 2003 NL.
Hier de tabellen:
- Relatie (primary key RelatieID:autonumber)
- AdresRelatie (primary key RelatieID, AdresID, StartDatum)
- Adressen (primary key AdresID:autonumber)
De adressen van de relaties zitten in de Adressen tabel en meerdere relaties kunnen hetzelfde adres hebben, maar op een bepaalde datum kan een relatie maar 1 adres hebben. De adressen zijn aan de relaties gekoppeld door de tabel AdresRelatie.
Nu heeft de tabel Adressen een veld Telefoonnummer. Dit veld wil ik verplaatsen naar de tabel Relaties. Ik heb nu een veld Telefoonnummer aangemaakt in de tabel Relaties en wil dit veld vullen met de actuele telefoonnummers die nu nog in de tabel Adressen staan. Hiervoor maak ik een UPDATE query die er als volgt uit ziet:
UPDATE Relaties
SET Relaties.Telefoonnummer = Adressen.Telefoonnummer
FROM Relaties INNER JOIN (Adressen INNER JOIN AdresRelatie ON Adressen.AdresId = AdresRelatie.AdresId) ON Relaties.RelatieId = AdresRelatie.RelatieId
WHERE ((AdresRelatie.StartDatum<=Now()) AND ((AdresRelatie.EindDatum>=Now()) Or (AdresRelatie.EindDatum Is Null)))
Deze query geeft de fout die (als alles goed gegaan is) als bijlage bij dit bericht te zien is. Mocht de bijlage niet zichtbaar zijn, dan komt het er op neer dat er een syntax fout is waarbij er aangegeven wordt dat er een operator ontbreekt.
Ik kom er niet uit, weet iemand wat ik fout doe?
Hier de tabellen:
- Relatie (primary key RelatieID:autonumber)
- AdresRelatie (primary key RelatieID, AdresID, StartDatum)
- Adressen (primary key AdresID:autonumber)
De adressen van de relaties zitten in de Adressen tabel en meerdere relaties kunnen hetzelfde adres hebben, maar op een bepaalde datum kan een relatie maar 1 adres hebben. De adressen zijn aan de relaties gekoppeld door de tabel AdresRelatie.
Nu heeft de tabel Adressen een veld Telefoonnummer. Dit veld wil ik verplaatsen naar de tabel Relaties. Ik heb nu een veld Telefoonnummer aangemaakt in de tabel Relaties en wil dit veld vullen met de actuele telefoonnummers die nu nog in de tabel Adressen staan. Hiervoor maak ik een UPDATE query die er als volgt uit ziet:
UPDATE Relaties
SET Relaties.Telefoonnummer = Adressen.Telefoonnummer
FROM Relaties INNER JOIN (Adressen INNER JOIN AdresRelatie ON Adressen.AdresId = AdresRelatie.AdresId) ON Relaties.RelatieId = AdresRelatie.RelatieId
WHERE ((AdresRelatie.StartDatum<=Now()) AND ((AdresRelatie.EindDatum>=Now()) Or (AdresRelatie.EindDatum Is Null)))
Deze query geeft de fout die (als alles goed gegaan is) als bijlage bij dit bericht te zien is. Mocht de bijlage niet zichtbaar zijn, dan komt het er op neer dat er een syntax fout is waarbij er aangegeven wordt dat er een operator ontbreekt.
Ik kom er niet uit, weet iemand wat ik fout doe?