Welkom op het forum van startpagina!

Dit forum staat op alleen-lezen. Je kan hier informatie zoeken en oude berichten terugvinden, maar geen nieuwe berichten plaatsen.

Naar overzicht van alle forums

Tabellen koppelen

  • Inge

    Hallo,

    Ik heb twee tabellen die hetzelfde zijn, alleen de ene tabel heeft een paar extra velden. Deze wil ik met elkaar koppelen zodat als ik in de ene iets wijzig het in de andere tabel ook wordt gewijzigd.

    Hoe doe ik dit?

    Inge

  • RV2

    Gebruik je een formulier om je ene tabel bij te werken?

    Zo ja, dan zul je via VBA je andere tabel bij moeten werken.

    Waarom gebruik je trouwens twee zo goed als identieke tabellen, dat is “not done”.

    RV2

  • Inge

    Hallo RV2,

    Bedankt voor je snelle reactie! Wat bedoel je met je eerste zin en wat is VBA? Ik ben nog niet zo lang met Access bezig, dus weet er nog niet zo veel van.

    Ik heb een hoofdbestandtabel met adressen die al heel erg uitgebreid is. Daarom wil ik een nieuwe tabel maken en deze koppelen aan het hoofdbestand zodat als er iets wordt gewijzigd in het hoofdbestand dit ook gebeurt in de nieuwe tabel. Een query is geen optie want daar kun je geen extra velden toevoegen.

    Alvast bedankt!

    Inge

  • Eric B

    Dus als we het goed begrijpen wil je een adressentabel splitsen omdat deze te groot is qua aantal velden? In de ene tabel een aantal velden en in de andere tabel de rest van de velden.

  • Inge

    Nee, we hebben een Hoofdtabel met 46 velden naast elkaar en vanuit die verschillende velden zijn allemaal verschillende query's gemaakt. Nu moeten we een mailing doen waardoor wij nog meer velden moeten creëren in het hoofdbestand om met die nieuwe velden een query te maken. Omdat het natuurlijk steeds groter en onoverzichtelijker wordt willen wij eigenlijk een nieuwe tabel maken die gekoppeld is aan het hoofdbestand.

  • Eric B

    Zoals RV2 al opmerkte het is not done om tabellen te splitsen…dus dacht ik aan het volgende. Voeg de mailings velden gewoon toe aan je tabel.

    Maak een query met de velden die je in het eerste formulier wilt zien en onderhouden. Deze query wordt dan de RecordBron van je eerste formulier

    Vervolgens maak je een tweede query aan met de mailing velden Deze query dient als RecordBron van je formulier met je mailing gegevens.

    Mocht het zo zijn dat je tegen de grenzen van Access aanloopt (maximaal aantal velden….etc) Dan is er een tweede optie, maar dan komen we in de VBA sferen terecht en het waarborgen van de integriteit van de gegevens is veel complexer.

    Je kan een tweede tabel aanmaken en deze koppelen aan je bestaande tabel. Wat we dan in feite hebben is een één op veel relatie. Je moet dan wel een serie maatregelen gaan treffen zodat de gebruiker alleen dat ene gekoppelde record krijgt te zien en kan wijzigen.

  • RV2

    46 kolommen?

    Lijkt erop dat je Access gebruikt als een spreadsheet programma.

    Ik zou eens gaan kijken welke gegevens je kan groeperen en vervolgens voor iedere groep een nieuwe tabel aanmaken.

    Tussen de tabellen definieer je vervolgens relaties in het relatievenster.

    Dit is een onderdeel van een methode bekend als normaliseren en da's een absolute must als je met omvangrijkere relationele databases (waaronder Access)aan de slag wilt.

    Voorkomt ook, zoals in jouw geval, dat je kolommen blijft toevoegen en uiteindelijk in VBA moet gaan goochelen om gegevens op te hoesten die je normaliter vrij eenvoudig via queries op kan vragen.

    Mijn advies, verdiep je eerst eens in relationele databases en normaliseren en pas je datastruktuur conform aan.

    Wellicht niet een antwoord waar je op zit te wachten, voorkomt wel geheid problemen en ergernis, nu en in de toekomst.

    RV2