hi,
meine frage bezieht sich auf das open office basic datenbankprogramm.
ich habe eine datenbank mit verschiedenen tabellen.
um eine m:n beziehung ordentlich und korrekt verarbeiten zu können benötige ich eine dritte tabelle, die die beziehung zwischen zwei anderen tabellen darstellt. allerdimgs müssen dort zwei schlüssel rein, die primärschlüssel der beiden mengen als fremdschlüssel. leider blieb es mir bisher verwehrt, mit diesem programm einen fremdschlüssel zu "erstellen".
vielen dank schonmal!
Fremdschlüssel in der Datenbank
Moderator: Moderatoren
Re: Fremdschlüssel in der Datenbank
Wozu? Du hast keine Frage gestellt - und auch nicht dargestellt, was du schon gemacht hast?Stahlii hat geschrieben:vielen dank schonmal!
Vielleicht hilft dir das folgende Bild?
Gruss
Thomas
- Dateianhänge
-
- In Base - mit Zwischentabelle
- n_m_beziehung.PNG (35.21 KiB) 9406 mal betrachtet
Re: Fremdschlüssel in der Datenbank
ich brauche in einer tabelle einfach nur zwei schlüssel. auch fremdschlüssel genannt!!!!! wie geht das?
und nein, das bild hilft mir leider nicht weiter.
und nein, das bild hilft mir leider nicht weiter.
Re: Fremdschlüssel in der Datenbank
um ganz genau zu sein möchte ich dies erreichen:
http://img409.imageshack.us/img409/6044 ... nntdq4.jpg
http://img409.imageshack.us/img409/6044 ... nntdq4.jpg
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Fremdschlüssel in der Datenbank
Eine Tabelle mit einem Schlüssel, welche zwei Fremdschlüssel enthält, zeigt Dir Toxitoms Bild.Stahlii hat geschrieben:ich brauche in einer tabelle einfach nur zwei schlüssel. auch fremdschlüssel genannt!!!!!
Dein Bild zeigt eine Tabelle mit einem Schlüssel, der aus zwei Spalten zusammengesetzt ist.
Das nennt man nicht Fremdschlüssel.
Ob das mit HSQLDB geht? Ja: genau so, wie einen einzelnen key zu vergeben. Markiere beide Zeilen in der Tabellenentwurfsansicht, rechte Maustaste, Primärschlüssel
Wo ist Dein Problem?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Re: Fremdschlüssel in der Datenbank
Alles richtig ... das Bild von Toxitom zeigt definitiv zwei Fremdschlüsselbeziehungen
das Bild von Stahlii dagegen eine Tabelle mit einem zweispaltigen Primärschlüssel ... und natürlich ließen sich diese Primärschlüsselspalten auch als Fremdschlüsselspalten einer Zwischentabelle verwenden (durch den UNIQUE INDEX auf dem Primärschlüssel kann dadurch implizit sichergestellt werden, dass jede Kombination von n:m maximal einmal in der Zwischentabelle existiert).
Bleibt die Frage der Indizierung und der Referentiellen Integrität (Abhängigkeiten zwischen Ausgangsdatensatz und verwiesenem Datensatz) - und dies hängt ausschließlich vom verwendeten Datenbankmanagementsystem ab (also Mysql, Postgres, ...). Ich gehe mal davon aus, dass es dafür innerhalb von HSQLDB keine Unterstützung gibt - kann das aber nicht mit Gewissheit sagen.
gruß tom
das Bild von Stahlii dagegen eine Tabelle mit einem zweispaltigen Primärschlüssel ... und natürlich ließen sich diese Primärschlüsselspalten auch als Fremdschlüsselspalten einer Zwischentabelle verwenden (durch den UNIQUE INDEX auf dem Primärschlüssel kann dadurch implizit sichergestellt werden, dass jede Kombination von n:m maximal einmal in der Zwischentabelle existiert).
Bleibt die Frage der Indizierung und der Referentiellen Integrität (Abhängigkeiten zwischen Ausgangsdatensatz und verwiesenem Datensatz) - und dies hängt ausschließlich vom verwendeten Datenbankmanagementsystem ab (also Mysql, Postgres, ...). Ich gehe mal davon aus, dass es dafür innerhalb von HSQLDB keine Unterstützung gibt - kann das aber nicht mit Gewissheit sagen.
gruß tom
- komma4
- ********
- Beiträge: 5332
- Registriert: Mi, 03.05.2006 23:29
- Wohnort: Chon Buri Thailand Asia
- Kontaktdaten:
Re: Fremdschlüssel in der Datenbank
Udo: das ist verständlich!Udo Fox hat geschrieben:Das gleiche Problem hat jemand bereits im Mai 2006 gepostet http://www.oooforum.org/forum/viewtopic.phtml?t=35852
Seitdem sind fast 2 Jahre vergangen und der Fehler ist immer noch in der Software. Das ist unverständlich, da es sich ja hier um eine ganz gängige Beziehung handelt.
Wenn jemand einen Text in einem Forum postet - ist das noch keine Fehlermeldung für das OOo-Projekt.
Gehe zur Seite vom OOo Fehlertracking und suche nochmal (nur 9 Einträge mit "foreign") nach einer existierenden Meldung.
Wenn wirklich keine vorhanden ist, dann
nehme Deine OOo-Benutzerkennung und erfasse einen issue.
Hänge ein Beispiel, bzw. Basedatei an, die den Fehler zeigt.
Nun hast Du eine Chance, dass das Problem genauer untersucht und ggfs. gefixt wird.
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)