Seite 1 von 1
Beziehungen
Verfasst: Mi, 21.09.2011 15:02
von maxtrade24
Liebe Community, ich habe eiine Frage zum erstellen von Beziehungen. Habe eine kleine Datenbank für meine Mannschaft erstellt. Jetzt möchte ich auch spieldaten darin haben. Also habe ich ja ohnehin schon die tabelle mit den Mitgliedern und die ID ist der Primärschlüssel. Jetzt habe ich eine zweite Tabelle spielberichte mit der Datensatz_ID und der Mitglieder_ID, Würfe, Tore etc. Die Datensatz_ID ist der Primärschlüssel. Wenn ich nun die Beziehung zwischen Mitglieder ID der Tabelle Mitglieder und der Mitglieder_ID in der Tabelle Spielberichte herstellen will, klappt das nicht. Er lässte mich ausschließlich zwischen den Primärschlüsseln eine Beziehung erstellen. Sonst nix. Woran liegts? Wenn ich in den Spielberichten die Datensatz_ID weglasse und stattdessen die Mitglieds_ID als Primärschlüssel nehme klappt das, hat aber den Nachteil das ich nun in die Tabelle nicht mehr als einen Datensatz für das jeweilige Mitglied eingeben kann da ich ja dann die Mitglieds_ID zweimal in der Tabelle hätte.
Vielen Dank im Vorraus
Re: Beziehungen
Verfasst: Mi, 21.09.2011 21:52
von maxtrade24
Hat denn wirklich keiner eine Ahnung woran meine Probleme liegen könnten? Hatte mal jemand ähnliche Probleme?
Re: Beziehungen
Verfasst: Mi, 21.09.2011 22:48
von F3K Total
Hallo,
hast Du die Primärschlüssel in beiden Tabellen als Auto-Wert deklariert?
Gruß R
Re: Beziehungen
Verfasst: Mi, 21.09.2011 23:19
von DPunch
Aloha
maxtrade24 hat geschrieben:Wenn ich nun die Beziehung zwischen Mitglieder ID der Tabelle Mitglieder und der Mitglieder_ID in der Tabelle Spielberichte herstellen will, klappt das nicht.
Was "klappt nicht"? Wie probierst Du das? Gibt es eine Fehlermeldung? Was genau passiert?
Aussagen wie "klappt nicht" sind nicht hilfreich.
Vom Prinzip her wüsste ich nichts, was ein "nicht klappen" hervorrufen könnte, solange das Feld "ID" in "Mitarbeiter" zumindest einen UNIQUE Constraint hat, was bei Verwendung als PK automatisch der Fall ist.
Abgesehen davon würde man das Dir Vorschwebende (wenn ich das auf die Schnelle richtig erfasst habe) grundsätzlich eher so
Mitglieder - "ID" (PK), "Vorname", "Nachname", etcetc
Spiel - "ID" (PK), "Spielort", "Datum", etcetc
Spieldaten - "Mitglieder_ID", "Spiel_ID" (zusammengesetzter PK), "Würfe", "Tore", etcetc
aufbauen.
Re: Beziehungen
Verfasst: Do, 22.09.2011 09:54
von maxtrade24
Guten Morgen,
ich gebe mir Mühe mein Problem jetzt so gut wie möglich darzustellen.
Also, wenn ich die Datenbank starte bringt er mir 2 Fehlermeldungen. Sie sind als Foto angehängt. Diese Fehlermeldungen bekomme ich auch wenn ich z.B. ein leeres Dokument mit Writer öffne.
Ich hatte openoffice zwischendurch auch mal deinstalliert und neu installiert. Die Fehlermeldungen blieben.
Ich habe jetzt 3 Tabellen zwischen denen ich Beziehungen ertellen will.
Mitglieder (ID, Integer, Primärschlüssel, Autowert), Spieldoku (Spiel_ID, integer, Primärschlüssel, kein Autowert), Spielübersicht (Spiel_ID, Integer, Primärschlüssel, kein Autowert)
Beim Versuch eine Beziehung zwischen Mitglieder (wert: ID) mit Spieldoku (wert: Mitglieds_ID) zu erstellen kommt folgende Meldung:
SQL-Status: S0021
Fehler-Code: -57
Column types do not match in statement [ALTER TABLE "spieldoku" ADD FOREIGN KEY ("Mitglieds_ID") REFERENCES "Mitgliedsdaten" ("ID")]
Wenn ich dann zwischen Spieldoku (Wert Spiel_ID) und Spielübersicht (Wert: Spiel_ID) erstellen will, macht er eine 1:1 Beziehung
Re: Beziehungen
Verfasst: Do, 22.09.2011 12:55
von DPunch
Aloha
Zu den Ein-/Ausgabefehlern kann ich Dir nichts sagen.
Aber die Fehlermeldung
maxtrade24 hat geschrieben:SQL-Status: S0021
Fehler-Code: -57
Column types do not match in statement [ALTER TABLE "spieldoku" ADD FOREIGN KEY ("Mitglieds_ID") REFERENCES "Mitgliedsdaten" ("ID")]
deutet erstmal darauf hin, dass "Mitglieds_ID" nicht als Integer, bzw Ganzzahl im Allgemeinen, definiert ist.