Avatar billede maabjerg Nybegynder
19. januar 2005 - 21:16 Der er 5 kommentarer og
3 løsninger

Hvordan kobler jeg to tabeller sammen?

Hej

jeg er ved at lave en database over kunder. Kunderne kan eje en masse produkter.

Jeg har lavet en søgemaskine til at søge på Navn, Efternavn, Adresse, Postnummer, by og så produktnummer.

Problemet er produktnummeret. Den ligger i en anden tabel end alle de andre informationer.

Hvordan kan jeg lave sådan at hvis man indtaster et produktnummer så finder den kunden der ejer det produkt og skriver dens informationer nedaf ligesom ved alt det andet.

Håber der er nogen derude der kan hjælpe mig.


På forhånd tak.

Mvh Steffen Maabjerg
Avatar billede mugs Novice
19. januar 2005 - 21:19 #1
Det har jeg da sendt dig for længst. Brug relationerne.
19. januar 2005 - 21:21 #2
jeg går ud fra, at du har en tabel, som kobler kunder og produkter sammen (f.eks. tblKunder_Produkter)? Denne tabel indeholder så Kundenr og produktnummer?

Når du taster et produktnummer og vil søge på dette, skal filteret så i princippet se således ud:

Kundenr in (Select Kundenr From [tblKunder_produkter] Where Produktnummer = " & Me!SøgProduktnummer & ")
Avatar billede maabjerg Nybegynder
19. januar 2005 - 21:25 #3
Problemet er at de har mange produkter

så jeg har et felt der hedder Ejer Id ved produkterne og et felt der hedder Id ved kunderne.
Avatar billede terry Ekspert
20. januar 2005 - 19:16 #4
You say "finder den kunden der ejer det produkt..." so I assume that a product has only one owner!

Therefore you need to make a query where you have the kunder table and the produkt table. In the produkt table there MUST be a foreign key field whioch is related to the primary key field in kunder table. Make an INNER join on these two fields. Now select the fields you want to see in the result.
In the criteria for produktnummer enter

[Indtast produktnummer]

Now when you run the query you will be asked to Indast produktnummer. After doing so you should now see the information you want!
Avatar billede terry Ekspert
20. januar 2005 - 19:22 #5
Your SQL should look something like this

SELECT Kunde.*
FROM Kunde INNER JOIN Produkt ON Kunde.Kundenr = Produkt.KundeNr
WHERE Produkt.ProduktNummer ="123"


In this example I am assuming that the produktNr is a text field
Avatar billede terry Ekspert
20. januar 2005 - 19:23 #6
SELECT Kunde.*
FROM Kunde INNER JOIN Produkt ON Kunde.Kundenr = Produkt.KundeNr
WHERE Produkt.ProduktNummer=[Indtast ProduktNummer]

will prompt you for a number
Avatar billede mugs Novice
20. januar 2005 - 19:27 #7
Det forhold, at terry har brugt tid på at besvare spørgsmålet, foranlediger mig til at komme med en status i spørgsmålet.

Dette er det andet spørgsmål i samme "serie". Jeg har for længst returneret en db til maabjerg med relationer mellem 4 tabeller:

- En tabel med kunder
- En tabel med forsikringsoplysninger
- En tabel med produkttyper
- Samt en fjerde tabel med relationer til de øvrige 3, der "plukker" data med combo

Jeg sendte et par mail til maabjerg iaftes med yderligere forklaring og er fortsat sent i eftermiddag. Øvelsen går nu ud på, at maabjerg skal forstå betydningen af relationerne og bruge forespørgsler i stedet for at basere sine formularer på tabeller.

Terry har fuldstændig ret i sit svar, og ovenstående skal kun forståes som en status. Alle andre er naturligvis velkommen med et bidrag til problemets løsning.
Avatar billede maabjerg Nybegynder
19. februar 2005 - 10:34 #8
Sorry jeg ikk har fået skrevet herinde i længe..... Mugs har hjulpet mig. Men i får lidt point alle sammen pgr. at det har taget lang tid inden jeg har medlt ud fra mig.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester