Hallo Monja,
Ich habe drei Tabellen (KursDaten, KursZuordnung, KursUGruppen), die ich über die Tabelle KursZuordnung in einer ASP-Seite verknüpfen muss. Die Tabellen schauen so aus:
momentan wird gerade an einem oder zwei Artikel zu diesem Thema gearbeitet, Links zu den bisherigen Entwürfen findest Du in folgendem Thread fünf Threads tiefer.
KursUGruppen:
KUG_index
KG_index
KUG_text
KUG_BeschreibungKursZuordnung:
KEG_KD_index
KUG_index
KG_index
warum hier wieder die Spalte "KG_index"? Die scheint mir redundant zu sein.
KursDaten:
KD_index
KD_Bez
... (hier unwichtige weitere Felder)Die KursDaten.KD_index ist mit einer 1:n mit KursZuordnung.KEG_KD_index und die KursUGruppen.KUG_index ebenfalls mit einer 1:n mit KursZuordnung.KUG_index verknüpft.
Ich brauche nun eine Schleife, wo alle KursUGruppen.KUG_text angezeigt werden, wo KG_index eine bestimmte Zahl ist (kein Problem, das übergebe ich per QueryString und kann´s auch problemlos abfragen) und dann alle KursDaten.KD_Bez, die zu dieser KursUGruppe zählen.
Hmm, soweit ich das sehe, sollte folgendes SQL-Statement das Gewünschte liefern:
SELECT
KUG.KUG_text,
KD.KD_Bez
FROM (KursUGruppen AS KUG
INNER JOIN KursZuordnung AS KUZ
ON KUG.KUG_index = KUZ.KUG_index)
INNER JOIN KursDaten AS KD
ON KUZ.KEG_KD_index = KD.KD_index
WHERE KUG.KG_index = <zahl>
Also beispielsweise ist die KG_index bei KursUGruppen 10, dann brauch ich alle Überschriften (KUG_text) dazu und dann darunter die entsprechenden Kurse, die über die KursZuordnung verknüpft sind.
was verstehst Du unter "darunter die entsprechenden Kurse"?
Ich probiere schon über eine Woche herum, aber ich bekomme ich wildestens Fehlermeldungen.
Die ganzen index-Felder sind blöderweise als Strings definiert, nicht als Zahlen oder Autowert.
Da die Verknüpfungen in der DB erstellt werden konnten, sehe ich da kein großes Problem. Die Jet-Engine (das Datenbankmanagementsystem hinter Access) lässt diese nur zu, wenn die Felder den gleichen Datentyp und die gleiche Feldgröße aufweisen.
Kann das vielleicht derAuslöser des Problems sein? Ich greife über ADO / Driver={Microsoft Access Driver (*.mdb)} von den Online-Seiten auf meine MDB zu...
Hast Du schon einmal versucht, Deine Abfrage mit dem Abfrageneditor von MS Access zu erstellen. Die hier sollte damit problemlos zu machen sein :-)
Freundliche Grüße
Vinzenz