Fremdschlüssel in der Datenbank

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Stahlii
Beiträge: 8
Registriert: Do, 06.12.2007 19:23

Fremdschlüssel in der Datenbank

Beitrag von Stahlii »

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!
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Re: Fremdschlüssel in der Datenbank

Beitrag von Toxitom »

Stahlii hat geschrieben:vielen dank schonmal!
Wozu? Du hast keine Frage gestellt - und auch nicht dargestellt, was du schon gemacht hast?

Vielleicht hilft dir das folgende Bild?

Gruss
Thomas
Dateianhänge
In Base - mit Zwischentabelle
In Base - mit Zwischentabelle
n_m_beziehung.PNG (35.21 KiB) 9402 mal betrachtet
Stahlii
Beiträge: 8
Registriert: Do, 06.12.2007 19:23

Re: Fremdschlüssel in der Datenbank

Beitrag von Stahlii »

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.
Stahlii
Beiträge: 8
Registriert: Do, 06.12.2007 19:23

Re: Fremdschlüssel in der Datenbank

Beitrag von Stahlii »

um ganz genau zu sein möchte ich dies erreichen:

http://img409.imageshack.us/img409/6044 ... nntdq4.jpg
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Fremdschlüssel in der Datenbank

Beitrag von komma4 »

Stahlii hat geschrieben:ich brauche in einer tabelle einfach nur zwei schlüssel. auch fremdschlüssel genannt!!!!!
Eine Tabelle mit einem Schlüssel, welche zwei Fremdschlüssel enthält, zeigt Dir Toxitoms Bild.

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)
t-rexx
*
Beiträge: 11
Registriert: Mo, 02.10.2006 18:31

Re: Fremdschlüssel in der Datenbank

Beitrag von t-rexx »

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
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Fremdschlüssel in der Datenbank

Beitrag von komma4 »

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.
Udo: das ist verständlich!
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)
Antworten