sql in access klappt in mysql nicht

Luda

Erfahrenes Mitglied
hallo ich habe eine abfrage gemacht, die in access klappt und bei mysql nicht. woran liegt das
SELECT * FROM Fahrzeug WHERE Fahrzeug.fahr_nr Not In (select fahr_nr from Rechnung)
 
schreibe mir mal bitt einen größeren Quellcodeschnippsel auf.. vielleicht hast du irgendwo einen kleinen syntaxfehler, denn so weit kann ich da keinen fehler sehen... vielleicht kennt SQL den befehl NOT IN nicht? Vielleicht heißt er dort anders!
 
das ist mein ganzer sqlstring.
ich möchte aus der tabell fahrzeug ( fahr_nr) alle die angezeigt bekommen die nicht in der tabelle Rechnung(fahr_nr) stehen!
:(
 
wie mach ich das
wenn ich das mit folgendem code mache bekomme ich nur die fahrzeuge die schon in der tabelle rechnung stehen. wie kann ich das negieren
ich habe keinen plan!
SELECT *
FROM Fahrzeug INNER JOIN Rechnung ON Fahrzeug.fahr_nr = Rechnung.Fahr_nr;
 
SELECT * FROM Fahrzeug LEFT JOIN Rechnung ON Fahrzeug.fahr_nr = Rechnung.Fahr_nr WHERE Rechnung.Fahr_nr is Null;

das sollte eigentlich gehen
 
danke das hat geklappt!

jetzt habe ich aber noch ein anderes problem.
und zwar bei access kann man doch die löschweitergabe aktivieren.
kann ich das auch bei my sql?
primär und fremdschlüssel ist richtig vergeben. die beziehung habe ich wie folgt erstellt.
ALTER TABLE enthalten ADD CONSTRAINT TblLeztzt_TblFahr_IX FOREIGN KEY (fahr_nr) REFERENCES Fahrzeug (fahr_Nr);
 
also du meinst die Referenzielle Integrität? also wenn ich in einer Tabelle etwas lösche, dass das in der anderen auch gleich verschwindet wenn diese miteinander verbunden sind, oder?

Da MySQL Fremdschlüssel (und übrigens auch Subselects) erst ab Version 4.0 unterstützt, geht das nicht, da du eine Version 3.x.x.x. hast. Mit einer höheren Version sollte das aber funktionieren...
 
Zurück