Base erstellt 1:n- statt 1:1-Verknüpfung

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

OO neuling
Beiträge: 2
Registriert: Mo, 15.06.2015 00:05

Base erstellt 1:n- statt 1:1-Verknüpfung

Beitrag von OO neuling »

Hallo,

ich habe ein sehr ähnliches Problem.

Ich habe zweit Tabellen, die ich mit einer 1:1 Relation verknüpfen möchte, jedoch erstellt OO Base immer nur eine 1:n Relation.

1.Tabelle:
Kontakte mit einem Primärschlüssel "KontaktID", INTEGER, Autowert

2.Tabelle:
KundenKonten mit einem Primärschlüssel "KontaktID", INTEGER, kein Autowert

Logik dahinter ist dass einem Kontakt nur ein Kundenkonto zugeordnet werden kann, aber nicht ein jeder Kontakt hat ein Kundenkonto. Nachdem für ein Kundenkonto einiger der Daten notwendig sind (daher Pflichtfelder), die für einen Kontakt unwichtig sind, kann ich die Informationen nicht in einer Tabelle zusammenfassen.

Habe ich einen Denkfehler?


_________________
Moderation:
Ich habe deine neue Frage vom zwei Jahre alten Thema 1:n/1:1 Beziehung und Update abgetrennt und dafür dieses neue Thema aufgemacht.
Beachte bitte die Allgemeinen Hinweise zur Forumsbenutzung, in jedem Forums-Bereich ganz oben in den permanenten Bekanntmachungen. Insbesondere lege bitte für eine neue Frage ein neues Thema an.
lorbass, Moderator
RobertG
********
Beiträge: 2034
Registriert: Fr, 13.04.2012 19:28
Kontaktdaten:

Re: 1:n/1:1 Beziehung und Update

Beitrag von RobertG »

Hallo OO neuling,

ich habe hier zwar nicht OpenOffice installiert, müsste aber eigentlich trotzdem gleich sein: Unter Extras → Beziehungen den Primärschlüssel der einen Tabelle mit dem der anderen Tabelle verknüpft zeigt bei der Verbindungslinie auf beiden Seiten eine '1' an.

1:1-Verbindungen werden bei so einer Datenbank wie der internen HSQLDB dann sinnvoll sein,
  • wenn Du ansonsten den Überblick über die Daten in einer Zeile verlierst oder
  • wenn "KundenKonten" sehr viele Felder enthält und viele "Kontakte" kein "KundenKonto" haben oder
  • wenn Du bestimmte Felder in "KundenKonten" von vornherein in der Tabelle zu Pflichtfelder machen möchstest.
Ansonsten kannst Du problemlos die Felder, die in "KundenKonten" stehen, auch in die "Kontakte"-Tabelle mit einfügen.

Pflichtfelder legst Du beim Tabellenentwurf damit fest, dass Du in den Feldeigenschaften → Eingabe erforderlich → "Ja" auswählst.

Jetzt kann es natürlich sein, dass Du bestimmte Pflichtfelder für die "KundenKonten" haben willst (wenn ein Konto, dann bestimmte Felder ausfüllen ...). Das könntest Du bei einer einzigen Tabelle dadurch sicherstellen, dass Du die Kontoverwaltung in einem gesonderten Formular machst und dort dann die Felder als Pflichtfelder der Formularfelder definierst.

Gruß

Robert
OO neuling
Beiträge: 2
Registriert: Mo, 15.06.2015 00:05

Re: Base erstellt 1:n- statt 1:1-Verknüpfung

Beitrag von OO neuling »

Danke sehr!

ich wuste nicht, dass ich die Felder in einem Formular auch als Pflichtfelder aussuchen kann. Cool! das werde ich heute gleich nach der Arbeit ausprobieren!
=)

bis am Abend=)
Antworten