Hallo Leute,
ich habe ein kleines Filmlexikon geschrieben, welches auf eine
Access-
DB zugreift. Die
DB enthält unter anderem zwei Tabellen.
Tabelle 1: FILM; Felder: FilmID (Primärschlüssel), Titel, Dauer, Filmtyp,...
Tabelle 2: DARSTELLER; Felder: DarstellerID (Primärschlüssel), Name, Vorname,...
Diese n:m Beziehung löste ich mit einer dritten Tabelle FILM_DARSTELLER mit den Feldern FilmID (Primärschlüssel) und DarstellerID (Primärschlüssel) auf. Das alles klappt prima.
Um auch geziehlt suchen zu können, besitzt das Programm eine Abfrage-Form. Dabei stieß ich allerdings auf ein Problem. Es ist ja kein Hexenwerk alle Filme mit Schauspieler A oder B zu finden. Was aber, wenn man davon nur die Filme haben will, in denen Schauspieler C und D nicht mitspielen?
Das funktioniert jedenfalls nicht:
SQL-Code:
SELECT FILM.Titel
FROM FILM INNER JOIN FILM_DARSTELLER ON (FILM.FilmID = FILM_DARSTELLER.FilmID)
WHERE ((FILM_DARSTELLER.DarstellerID=1) OR (FILM_DARSTELLER.DarstellerID=2)) AND (FILM_DARSTELLER.DarstellerID<>3) AND (FILM_DARSTELLER.DarstellerID<>4);
Stehe ich völlig auf dem Schlauch oder gibt es für dieses Problem keine reine
SQL-Lösung?
Gruß
e-gon