Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   [Access] Tabelle hat Beziehung mit sich selbst (https://www.delphipraxis.net/164749-%5Baccess%5D-tabelle-hat-beziehung-mit-sich-selbst.html)

DeddyH 1. Dez 2011 08:16

AW: [Access] Tabelle hat Beziehung mit sich selbst
 
Ich würde das ungefähr so aufbauen:
- eine Tabelle "Saison"
- eine Tabelle "Mannschaften"
- eine Tabelle "Begegnungen"

So, die Begegnungen bekommen dann 4 Felder: ID (Autowert), ID_Saison (FK auf Saison), ID_Heim (FK auf Mannschaften), ID_Gast (nochmal FK auf Mannschaften). Über einen Check-Constraint stellt man sicher, dass sich ID_Heim und ID_Gast unterscheiden müssen (eine Mannschaft kann ja nicht gegen sich selbst spielen). Außerdem bekommt die Kombination aus ID_Saison, ID_Heim und ID_Gast einen Unique-Index verpasst, da es je Saison nur ein Hin- und ein Rückspiel gibt. Somit sollte das recht wasserdicht sein. Inwieweit sich das mit Access machen lässt, kann ich allerdings nicht sagen, da ich keins besitze.

hans ditter 3. Dez 2011 18:23

AW: [Access] Tabelle hat Beziehung mit sich selbst
 
Ein dickes Danke an alle! :) Jetzt haben wir immerhin schonmal das erste große Problem gelöst.

Letztlich hat uns der Tipp geholfen,dass man einfach die Zuweisung macht und eine der beiden Spalten auf Breit 0 cm legt. Also das was Jumpy vorgeschlagen hat.

Jetzt haben wir aber noch ein Problem, bzw. eigentlich ein ziemlich ähnliches. Jetzt wollen wir ein Spielplan zum Aufhängen erstellen lasse, also einen Bericht erstellen. Darin sollen die beiden Mannschaften (natürlich mit Namen) und noch ein paar Informationen angezeigt werden. Jetzt die Frage: wie schaffen wir es im Bericht, dass dort nich die ID sonder der Name angezeigt wird?

Vielen Dank bis hierher schonmal für die Mitarbeit und ich würde mich über weitere Hilfe freuen!

hans ditter

p80286 3. Dez 2011 20:19

AW: [Access] Tabelle hat Beziehung mit sich selbst
 
Welche Tabellen hast Du denn jetzt?
Wahrscheinlich eine Tabelle Manschaften mit ID und Namen ?
dann sollte das ungefähr so gehen:
SQL-Code:
select Mannschaften1.Namen,Mannschaften2.Namen
from Mannschaften Mannschaften1, Mannschaften Mannschaften2, Begegnungen
where Begegnungen.HeimID=ManNschaften1.ID
  and Begegnungen.GastID=Mannschaften2.ID
Gruß
K-H

hans ditter 4. Dez 2011 00:00

AW: [Access] Tabelle hat Beziehung mit sich selbst
 
Ich werde morgen mal ein paar Bilder reinstellen, die das hoffentlich etwas besser erklären, als ich das kann.

LG; hans ditter

DeddyH 4. Dez 2011 00:16

AW: [Access] Tabelle hat Beziehung mit sich selbst
 
K-H hat doch völlig recht, genauso sollte es gehen. Etwas andere Syntax:
SQL-Code:
SELECT
  M1.Name, M2.Name
FROM
  Mannschaften M1
JOIN
  Begegnungen B ON B.Heim_ID = M1.ID
JOIN
  Mannschaften M2 ON M2.ID = B.Gast_ID

HiWieGehts 4. Dez 2011 10:10

AW: [Access] Tabelle hat Beziehung mit sich selbst
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo,

das Problem (eigentlich ist es keines oder ich habe die Anforderung nicht verstanden) ist ganz einfach mit den Access-Mitteln lösbar, ohne dass mit SQL-Code herumgebastelt werden muss. Das ist nur erforderlich, wenn man das Access-Ergebnis verschönern will. Es muss nur die Tabelle Mannschaften 2 mal für die Erstellung der Abfrage eingefügt werden.
Beziehungen können erstellt werden, sind aber für die Lösung nicht erforderlich.

hans ditter 5. Dez 2011 18:02

AW: [Access] Tabelle hat Beziehung mit sich selbst
 
Oooh man, ihr seid die Besten!!!

Ich glaube wir standen da alle ein bisschen auf der Leitung in der Projektgruppe.:oops: Letztlich so einfach. :thumb:

Auf jeden Fall nochmal ein dickes Danke! :thumb::thumb:

LG, hans ditter


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz