WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 01.06.2004, 21:53   #11
mr_sax
Jr. Member
 
Registriert seit: 27.04.2002
Alter: 57
Beiträge: 43


Standard

Hallo nochmals!

Leider reicht mein Verständnis nicht aus, um dieses Problem zu lösen!

Ich habe jetzt zwei Tabellen gemacht - eine mit ID, Titel, Original Titel, Format und Sprache und eine zweite mit ID und Schauspieler (alle pro Film in einem Feld).

Die SQL - Ansicht sieht folgendermaßen aus:

SELECT Filme.ID, Filme.Titel, Filme.Originaltitel, Filme.Regie, Filme.Format, Schauspieler.Schauspieler
FROM Filme INNER JOIN Schauspieler ON Filme.ID = Schauspieler.ID
WHERE ((([Filme].[Schauspieler]) Like [Schauspieler]));


Und es funktioniert immer noch nicht!

Ein weiterer verzweifelter Hilferuf: kann mir da jemand weiterhelfen?

Vielen Dank im voraus!

mr_sax
mr_sax ist offline   Mit Zitat antworten
Alt 02.06.2004, 00:15   #12
wbendl
Master
 
Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550


Standard

Hi!

Da ist anscheinend einiges schief gelaufen.

Wenn du mein System verwendest, sind mindestens 3 Tabellen notwendig.

Die Aufteilung, die du jetzt hast bringt garnichts. Da wäre alles in einer Tabelle besser.
Außerdem verknüpfst du die Tabellen über Felder, die keinen Bezug zueinander haben.

Mir ist auch nicht wirklich klar, welches Ergebnis du von deiner Abfrage erwartest, und wie ein Suchbegriff oder Filterkriterium an die Abfrage übergeben wird.

Vorstellen könnte ich mir 2 Abfragen:

1. Alle Schauspieler zu einem Film

2. Alle Filme, in denen ein bestimmter Schauspieler mitspielt

Mit 3 Tabellen sollte sich das ohne VBA machen lassen

mfg

WB
wbendl ist offline   Mit Zitat antworten
Alt 02.06.2004, 15:03   #13
Hussl
Veteran
 
Registriert seit: 08.02.2001
Alter: 41
Beiträge: 320


Standard

Ich würde das folgendermaßen lösen:

Tabelle Filme
- FilmID
- Titel
- ...

Tabelle Schauspieler
- ActorID
- Name
- ...

Tabelle FilmSchauspieler
- FilmID
- ActorID

Damit kannst du ganz einfach für jeden Film beliebig viele Schauspieler einfügen. Mit folgender Abfrage kannst du diese dann selektieren:

SELECT Filme.Titel, Schauspieler.Name
FROM Schauspieler INNER JOIN (Filme INNER JOIN FilmSchauspieler ON Filme.FilmID = FilmSchauspieler.FilmID) ON Schauspieler.ActorID = FilmSchauspieler.ActorID;

Vielleicht hilfts weiter!

Grüße,
Hussl
____________________________________
Nein, ich bin nicht die Signatur, ich putz hier nur.

http://www.chili-it.at
Hussl ist offline   Mit Zitat antworten
Alt 02.06.2004, 18:51   #14
mr_sax
Jr. Member
 
Registriert seit: 27.04.2002
Alter: 57
Beiträge: 43


Standard

Danke vorerst für die geduldige Hilfe!

Leider habe ich erneut ein kleines Problem: in der Tabelle FilmSchauspieler steht FilmID und ActorID. Was soll dann da genau stehen? Die Zahlen 1, 2, 3 etc. oder die richtigen Titel? Und was soll bei ActorID stehen? Ebenfalls die Zahlen, oder die Namen der Schauspieler?

Ich habe beide Varianten versucht, jedesmal bekomme ich bei der Abfrage die Fehlermeldung: Im Ausdruck stimmt ein Datentyp nicht überein!

Wie gesagt, danke für eure Unterstützung!

lg

mr_sax
mr_sax ist offline   Mit Zitat antworten
Alt 02.06.2004, 22:52   #15
wbendl
Master
 
Registriert seit: 22.03.2000
Alter: 66
Beiträge: 550


Standard

Hi!

In den meisten Fällen ist ID eine Zahl. Am einfachsten verwendest du den als Typ Autowert. Dann vergibt Access automatisch eine ID.

Bei Feldern, die mit dieser ID korrespondieren, muß der Typ Long Integer sein. Hier mußt du den entsprechenden Wert händisch eintragen.

Ich schick dir ein kleines Beispiel. Damit ist es leichter zu verstehen, wie die Tabellen aussehen.
Der Komfort liegt erst in den entsprechenden Ein- und Ausgabe-Formularen und Berichten.

mfg

WB
wbendl ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:37 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag