ID's terugkoppelen naar gerelateerde waarde uit andere tabel

Status
Niet open voor verdere reacties.

langerak

Nieuwe gebruiker
Lid geworden
24 jan 2008
Berichten
2
Beetje kromme omschrijving, het zit zo:

Ik heb een studieprojectje lopen en dat moest over bussen gaan, nu heb ik dus een bussen tabel aangemaakt en een fabrikantentabel

Voorbeelddata zou zijn:
FABRIKANTEN:
ID Fabrikant
1 Den Oudsten
2 Mercedes
etc

BUSSEN:
ID Fabrikant
1 2
2 1

Dit gaat nog goed en ik snap tot zover wat ik doe (ben een hele tijd uit SQL geweest helaas, dus moet even mijn kennis opvijzelen!), maar hier het probleem:
Ik kan een SELECT * FROM BUSSEN; maken en met een functie welke de query automatisch in een array zet (het moet met PHP gebruikt worden) krijg je dan de waarden terug te zien, alleen bij fabrikant uiteraard ook dat nummer.
Is er een mogelijkheid dat als ik de bussen wil raadplegen (middels PHP) dat het ID nummer bij Fabrikant "vertaald" word naar hetgeen gelijk is aan de waarde in FABRIKANTEN, dat hij dus in plaats van 2 dan Den Oudsten laat zien?
Dit hoeft alleen bij het raadplegen, bij het opslaan gaat het goed zoals je ziet, dan pakt hij de nummers, zoals ik het wil hebben, alleen wanneer je voor de eindgebruiker het raadpleegbaar wilt houden, moet dat ID nummer "vertaald" worden naar hetgeen in de FABRIKANTEN tabel staat :P.
Is het de query die aangepast moet worden of is het PHP code die ik moet implementeren / aanpassen?

Ik heb het zo duidelijk mogelijk geprobeerd te omschrijven, mocht het niet geheel duidelijk zijn vraag het dan, dan zal ik het proberen nog beter toe te lichten!

Alvast bedankt en ik hoop dat iemand een makkelijke oplossing heeft voor mij! :D
 
Allereerst zou ik niet 2x ID gebruiken, omdat dan later absoluut niet duidelijk is welke ID je bedoelt: die van de Fabrikant of Bussen tabel? Ik gebruik daarom bijvoorbeeld: idFabrikant en idBus. In mijn voorbeeld zie je die ook terugkomen...

Access geeft voor jouw voorbeeld als SQL:
Code:
SELECT Bussen.idBus, Fabrikant.Fabrikant
FROM Bussen INNER JOIN Fabrikant ON Bussen.idFabrikant = Fabrikant.idFabrikant;

Hiermee geef je aan je van de bussen de waarden van 'idBus' wilt zien, en van de fabrikanten de naam: het 'Fabrikant' veld.
Via INNER JOIN kun je aangeven dat er een relatie is tussen de tabellen Bussen en Fabrikant, en wel via de respectievelijke velden Bussen.idFabrikant en Fabrikant.idFabrikant.

Succes!
 
Ahhh, heel erg bedankt voor de oplossing!

Eigenlijk best dom van die JOIN :P dat ik dat zelf niet meer wist :shocked:

Ik zal de tip van de ID's zeker gebruiken! Bedankt hiervoor!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan