Tweakers,
Ik probeer in mijn MySQL database een relatie tussen 2 velden in 2 verschillende tabellen toe te voegen zodat ik in my query's met inner joins kan gaan werken. Dat heb ik in het verleden vaker gedaan en ik heb er nooit problemen gehad, nu loop ik echter tegen het volgende aan.
De 2 tabellen waar het om gaat zijn stagemanagement_opties en stagemanagement_gebruikers.
In gebruikers is natuurlijk een veld gebruikerID en in stagemanagement_opties is een veld optieGebruikerID waarin wordt opgeslagen welke gebruiker de optie heeft gemaakt. Verder is gebruikerID de primary key van stagemanagement_gebruikers.
Het is de bedoeling dat ik een verwijzing maak tussen optieGebruikerID en gebruikerID zodat ik met de volgende query de optie met bijbehorende gebruiker kan ophalen vanuit PHP:
Nu loop ik echter bij het uitvoeren van deze query:
Tege deze error aan:
De hele database is innoDB en er is nog nergens een relatie gelegd met gebruikerID of optieGebruikerID.
Heeft iemand wellicht een idee hoe dit kan komen?
Alvast bedankt,
Nils Kuijpers
Ik probeer in mijn MySQL database een relatie tussen 2 velden in 2 verschillende tabellen toe te voegen zodat ik in my query's met inner joins kan gaan werken. Dat heb ik in het verleden vaker gedaan en ik heb er nooit problemen gehad, nu loop ik echter tegen het volgende aan.
De 2 tabellen waar het om gaat zijn stagemanagement_opties en stagemanagement_gebruikers.
In gebruikers is natuurlijk een veld gebruikerID en in stagemanagement_opties is een veld optieGebruikerID waarin wordt opgeslagen welke gebruiker de optie heeft gemaakt. Verder is gebruikerID de primary key van stagemanagement_gebruikers.
Het is de bedoeling dat ik een verwijzing maak tussen optieGebruikerID en gebruikerID zodat ik met de volgende query de optie met bijbehorende gebruiker kan ophalen vanuit PHP:
code:
1
2
3
4
5
| SELECT * FROM stagemanagement_opties AS o, stagemanagement_gebruikers AS g WHERE o.optieGebruikerID = g.gebruikerID AND o.optieStageID = ".mysql_real_escape_string($_GET["stageID"])."; |
Nu loop ik echter bij het uitvoeren van deze query:
code:
1
| ALTER TABLE stagemanagement_opties ADD FOREIGN KEY(optieGebruikerID) REFERENCES stagemanagement_gebruikers(gebruikerID) |
Tege deze error aan:
code:
1
| #1452 - Cannot add or update a child row: a foreign key constraint fails (`gildevenray_stagesys/#sql-158c_6e54`, CONSTRAINT `#sql-158c_6e54_ibfk_2` FOREIGN KEY (`optieGebruikerID`) REFERENCES `stagemanagement_gebruikers` (`gebruikerID`)) |
De hele database is innoDB en er is nog nergens een relatie gelegd met gebruikerID of optieGebruikerID.
Heeft iemand wellicht een idee hoe dit kan komen?
Alvast bedankt,
Nils Kuijpers