Verschil tabellen

Status
Niet open voor verdere reacties.

demeyer

Gebruiker
Lid geworden
16 mei 2009
Berichten
379
ik heb twee tabellen A en B binnen de database bib.mdb
weet iemand hoe ik een query kan maken die de records van A geeft die niet in B staan?

demeyer
 
het gaat over twee velden nl auteur en naam (van de boeken)
dat het boek bv Schmitt, Oma Rose in A staat
maakt niet dat er een leegte is B
in B zijn auteur en naam ook voor alle records ingevuld

demeyer
 
Maak 3 queries:
Query 1: maak je op tabel A, met velden auteur, naam en KoppelA:naam+auteur
Query 2: maak je op tabel B, met velden auteur, naam en KoppelB:naam+auteur
Query 3: bestaat uit query1 & 2. Je koppelt de velden koppel.
Voorbeeld: je wilt alle waarden uit tabel A zien die niet in B staan.
Dubbelklik op het verbindingslijntje A en B en kies de goede relatie (laat alle waarden van A zien en alleen van B die overeenkomen). Dan plaats je in query3 onder veld KoppelB het criteria Is Null. Door de velden Auteur en Naam van Tabel A in de query3 te plaatsen zie je welke Naam Auteur niet in Tabel B staat.
 
Laatst bewerkt:
Één query zou genoeg moeten zijn; zet beide tabellen er in, en koppel de velden [boek] en [auteur] aan elkaar. Verander de links tussen de twee tabellen naar een Left of Right join; dat is optie 2 of optie 3. Afhankelijk van welke optie alle velden van tabel A laat zien. Zet uit beide tabellen de velden Boek en Auteur in het raster. Geef de velden uit Tabel B het criterium Is Null. Voer de query uit, en je ziet de records die in Tabel A staan, die niet in Tabel B staan.
 
Als je er niet uitkomt kun je hier altijd een voorbeelddb met dummy gegevens plaatsen.
 
ik heb mij blijkbaar niet juist uitgedrukt
de twee tabellen staan slechts bij naam in dezelfde database
tabel A staat in biblio.mdb , tabel B staat ook in biblio.mdb maar een latere versie
zo slaag ik er niet in de twee tabellen of querys samen te brengen
 
Je helpt hier niet echt mee; een query als deze doe je zowiezo op verschillende tabellen, hoe die heten boeit natuurlijk niet.
 
sorry, maar bij het maken van de query begin ik met "tabel toevoegen"
in die lijst staan alleen maar de tabellen van de database waartoe tabel A behoort
 
En toch snap ik je probleem nog steeds niet...
de twee tabellen staan slechts bij naam in dezelfde database
tabel A staat in biblio.mdb , tabel B staat ook in biblio.mdb
Als je een query maakt, kun je net zoveel tabellen toevoegen als je wilt. Dus wat is het probleem nu? Je tabellen staan toch allebei in de lijst?
 
tabel B staat niet in de lijst
tabel B maakt deel uit van een latere versie van biblio.mdb die ik biblio2.mdb heb genoemd
zo dat ik eigenlijk met twee databases zit
 
Dan koppel je de tabel van biblio2.mdb naar biblio.mdb of omgekeerd. Daarna kun je vauit de mdb met de gekoppelde een query met beide tabellen aanmaken. Hoe je moet koppelen hangt af van met welke versie van access je werkt.

Wellicht is het ook handig als je de reden verteld, waarom je 2 db's hebt en wat de verschillen zijn tussen de db's en de tabellen. Is de inhoud van de beide db's verschillend of overlappen de gegevens elkaar?
 
Laatst bewerkt:
Het helpt ook enorm als je ons de juiste informatie geeft :)
Afhankelijk van wat je wilt doen (misschien wil je de ontbrekende records uit tabel A toevoegen aan B, wat logisch voortvloeit uit je oorspronkelijke vraag) zou ik in de database van tabel B een koppeling maken met tabel A uit de oorspronkelijke tabel. En verder verwijs ik dan naar mijn eerdere oplossing met de query met Outer Joins.
 
dit is de achtergrond: op zekere dag ontdekte ik dat een boek niet meer in de tabel bib stond
terwijl zeker was dat het er vroeger wel in stond
ik ging kijken naar een vroegere versie nl de tabel in biblio111109a.mdb
daar stond de record wel degelijk in
als records zo uit de tabel kunnen verdwijnen zijn er misschien nog andere verdwenen
en dus zoek ik een middel om te weten welke records staan in de tabel bib van biblio111109a.mdb
en niet in mijn huidige tabel in database biblio120711.mdb
 
Je hebt nu, als het goed is, voldoende gereedschappen om het probleem op te lossen. En wat je zou moeten doen, is inderdaad de ontbrekende records weer toevoegen aan de justeer tabel.
Als het gaat om de tabel met boeken, zou ik overigens de oorspronkelijk (correcte) tabel importeren en aanvullen vanuit de tabel die niet meer correct is. De reden daarvoor is dat anders de verwijzingen in andere tabellen wellicht naar de verkeerde records wijzen. Dus de werkwijze is dan: foute tabel hernoemen, correcte importeren, tabel goede naam geven en via een toevoegquery (zie eerder antwoord) recente records toevoegen.

Maar die keuze is aan jou natuurlijk. Had je het hele verhaal gelijk in het begin goed omschreven, dan had je veel sneller een goed advies gekregen.
 
Laatst bewerkt:
ik heb de twee tabellen in één database gekregen
nu wacht ik op de komst van een collega van mij, volgende dinsdag of woensdag,
om de query te maken zoals je hierboven hebt aangegeven
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan