Hallo,
hab ne MySQL DB laufen und die 3 DB´s "ProfDB" "StudentDB" und "ConnectionDB"
jetzt möchte ich in der ConnectionDB realsieren das jeder Student bei mehreren Profs "eingetragen" sein kann. Logischerweise auch genau andersrum. Deswegen hab ich Fremdschlüsselbeziehungen zwischen den Dbs eingetragen.
Dafür hab ich den Code benutzt:
wenn ich die beiden Befehle ausführe, nimmt sql sie auch an. (Jeweils ID ist der Primärschlüssel in der DB)
jetzt hab ich mal einen manuellen Eintrag in die ConnectionDB gemacht, wobei ich aber die Zahlen höher genommen habe als die IDs in den anderen DBs reichen.
z.b.: StudentDB höchste ID : 8 , ProfDB höchste ID : 10
manueller Eintrag in die ConnectionDB :
meine Frage ist jetzt : Wieso knallt es nicht ?!
in den beiden anderen DBs gibt es keinen Eintrag mit der ID 11 !!
ich hoffe ihr könnt mir helfen !!
Gruß
hab ne MySQL DB laufen und die 3 DB´s "ProfDB" "StudentDB" und "ConnectionDB"
jetzt möchte ich in der ConnectionDB realsieren das jeder Student bei mehreren Profs "eingetragen" sein kann. Logischerweise auch genau andersrum. Deswegen hab ich Fremdschlüsselbeziehungen zwischen den Dbs eingetragen.
Dafür hab ich den Code benutzt:
Code:
ALTER TABLE ConnectionDB ADD FOREIGN KEY (ProfID) REFERENCES ProfDB(ID) ON UPDATE RESTRICT ON DELETE RESTRICT ALTER TABLE ConnectionDB ADD FOREIGN KEY (StudentID) REFERENCES StudentDB(ID) ON UPDATE RESTRICT ON DELETE RESTRICT
jetzt hab ich mal einen manuellen Eintrag in die ConnectionDB gemacht, wobei ich aber die Zahlen höher genommen habe als die IDs in den anderen DBs reichen.
z.b.: StudentDB höchste ID : 8 , ProfDB höchste ID : 10
manueller Eintrag in die ConnectionDB :
Code:
INSERT INTO `Collobo`.`ConnectionDB` (`ProfID` ,`UserID`) VALUES ('11', '11');
in den beiden anderen DBs gibt es keinen Eintrag mit der ID 11 !!
ich hoffe ihr könnt mir helfen !!
Gruß
Comment