Viele Tabellen mit gleichem Primärschlüssel

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Viele Tabellen mit gleichem Primärschlüssel

Re: Viele Tabellen mit gleichem Primärschlüssel

von RobertG » So, 18.10.2020 10:49

Wie Jörn schon schreibt ist das Löschen eine Frage der Einstellung in den Beziehungen.

Das automatische Erstellen von neuen Datensätze in anderen Tabellen geht nicht mit einfachen Mitteln. Die beste Variante ist hier, dass Du in einem Hauptformular die 1. Tabelle (die auf jeden Fall zuerst beschrieben werden soll) anwählst. Dann wird auf das Unterformular der Schlüsselwert übertragen. Existiert dort noch kein Eintrag, so bleibt das Unterformular leer. Erst wenn Du Einträge im Unterformular machst wird auch ein neuer Datensatz erstellt. Vorher brauchst Du den Datensatz ja sowieso nicht. In sofern reicht die Variante.

Wenn Du unbedingt leere Datensätze nur mit einem Primärschlüsselfeld erstellen willst, dann musst Du das über ein Makro erlöedigen, das beim Erstellen in der 1. Tabelle den dortigen Wert in die anderen Tabellen erledigt.

Re: Viele Tabellen mit gleichem Primärschlüssel

von Hiker » Fr, 16.10.2020 23:22

Hallo,

schau Dir mal im Base-Handbuch das Thema kaskadiert Löschen an, auf das z.B. hier
https://www.libreoffice-forum.de/viewtopic.php?t=18771
verwiesen wird.

Du wirst also mit Haupt- und Unterformular arbeiten müssen.

Mfg, Jörn

Viele Tabellen mit gleichem Primärschlüssel

von hobbyuser » Do, 15.10.2020 20:16

Hallo,

ich bin base-neuling, habe in meiner Ausbildung schon einmal ein bisschen in Access rum gepfuscht, bin aber ansonsten unbefleckt. Dennoch möchte ich für jmd. weil ich weiß, dass die Möglichkeit besteht, deren Administration das bloß nicht hinbekommt, eine Datenbank erstellen.

Die Datenbank soll aus vier Tabellen bestehen wobei der Primärschlüssel bei allen Tabellen identisch sein soll. Und zwar nicht typischerweise als Integer sondern als Text, da es die Struktur x-xxx hat, jedes X steht für eine Ganzzahl. Also Grundsätzlich funktioniert das Ganze über 1:1 Beziehung aller Tabellen. Allerdings soll, wenn ich in Tabelle 1 einen neuen Datensatz anlege, dieser auch automatisch in allen anderen Tabellen angelegt werden. Und an dieser Stelle scheitere ich gerade. Schonmal vorab, weil ich weiß dass das der erste hinweis sein wird, kann ich die Tabellen nicht zusammenfassen, da sie sich im Inhalt überschneiden. Der Inhalt der jeweiligen Tabelle ist abhängig vom Zeitpunkt der Aufnahme. Jede Tabelle hat ein eigenes Formular und das Formular von Tabelle 1 ist dafür da neue Datensätze anzulegen. D.h. wenn ich in Formular_Tabelle1 einen Datensatz 1-234 anlege, soll dieser auch automatisch in Tabelle 2-4 erstellt werden. Optimalerweiser auch umgekehrt, also wenn er in Tabelle 1 gelöscht wird soll er auch in allen anderen verschwinden. Erstellen und löschen muss in keiner anderen Tabelle möglich sein. Da eine 1:1 Beziehung eher -untypisch ist kann ich wenig darüber in Foren oder Tutorials finden, bin aber aber sicher, dass mir hier jemand helfen kann.

Nach oben