Daten in zwei Tabellen schreiben

Hallo, hoffentlich könnt ihr mir weiterhelfen.

Für eine Hundephysiopraxis soll ich eine Datenbank erstellen.
Habe ein Formular/Tabelle für Daten wie Patientenname, Besitzer, Anschrift und weitere Daten.
Habe dazu Access 2003 verwendet.
Ein zweites Formular/Tabelle habe ich für verschiedene Messungen erstellt.
Die Patientennummer des ersten Formulares steht auf Autowert. Über einen Button soll das zweite Formular geöffnet werden und bestimmte Daten des ersten Formulars angezeigt werden. Das funktioniert, wenn in beidem Formularen/Tabellen der selbe Datensatz mit der selben Patientennummer angelegt ist.
Gibt es eine Möglichkeit, die Daten des ersten Formulares nicht nur in die dazugehörige Tabelle zu schreiben, sondern automatisch auch in die zweite Tabelle damit man die Eingabe nicht zweimal manuell vornehmen muss?

Bislang verwende ich im zweiten Formular ein Kombinationsfeld um die Patientennummer auszuwählen und einzutragen (damit keine Verwechslungen bei der Suche entstehen). Es ist aber umständlich und ärgerlich, die restlichen Daten jeweils zweimal einzutragen.

Für eure Hilfe schon im voraus Danke.

Gruß

Sascha

Daten aus zwei Tabellen zusammenführen
Moin, Sascha,

Es ist aber umständlich und ärgerlich, die restlichen
Daten jeweils zweimal einzutragen.

das muss man nicht, wenn man die Daten zusammensucht:

 select Name, Vorname, Messwert1, Messwert2, ...
 from Kundenstamm, Messblatt 
 where Kundenstamm.Kundennr = Messblatt.Kundennr

Diese Operation heißt JOIN (und kann auch anders formuliert werden).

Den Join speicherst Du als Query, die nimmst Du als Datenquelle für das zweite Formular.

Gruß Ralf

Hallo,

ich möchte ja keine Daten zusammenführen.
HAb ja nur eine Datenbank mit Daten und diese Daten sollen auch in die zweite Datenbank. Die Felder Patientenname, Besitzer, Anschrift usw. sollen in die zweite Tabelle übernommen werden. Alle anderen Felder der zweiten Tabelle werden dann manuell mit Werten gefüllt.

Guten Tag,

HAllo,

mhmm, ich denke, da gibt es grundlegende Missverständnisse zu einer relationalen Datenbank.

Vermutlich hast Du keine zwei Datenbanken, sondern mehrere Tabellen in einer Datenbank(-Datei)

Auch dort werden mehrfach vorkommende Daten nur einmal gespeichert und über Schlüsselfelder in Beziehung zueinander gesetzt.

Vielleicht habe ich da was Interessantes für Dich, schreib mir mal eine EMail mit deiner Antwortadresse an d f 6 g l [ätsch} g m x . d e

asd

Ich möchte doch einfach nur einen Datensatz kopieren und in eine andere Tabelle einfügen…

Sascha

Guten Tag,

Hallo,

das ist aber ein Irrweg…

Das bringt nichts außer Verdruss und Datenchaos.

Moin, Sascha,

Ich möchte doch einfach nur einen Datensatz kopieren und in
eine andere Tabelle einfügen…

aus guten Gründen gibt es für solche Ferkeleien in Access keinen Befehl. Wenn Dir aber soviel daran liegt, warum programmierst Du das nicht einfach? Dabei lernst Du eine ganze Menge über Updates. Und wenn Du fertig bist, dann freust Du Dich an der Fehlersuche, weil Original- und kopierte Daten schneller auseinanderlaufen, als Du „piep!“ sagen kannst.

Gruß Ralf

Ok, klingt einleuchtend.
Wie aber funktioniert das dann?

Ok, klingt einleuchtend.
Wie aber funktioniert das dann?

Tabelle1 hat einen Id, in Tabelle2 wird ein Feld Id_FS angelegt (FS für Fremdschlüssel). Dann eine Beziehung anlegen: Beide Tabellen auswählen, Id anfassen und auf Id_FS fallen lassen.

Nächster Schritt ist die Anlage eines Unterformulars, auf dem die Messwerte stehen, sowie die Verbindung von Haupt- und Unterformular. Das zu erklären führt ins Uferlose, schau dazu bitte in der Hilfe nach. So jedenfalls geht alles fast von selbst :wink:

Gruß Ralf

Hallo,

Für eine Hundephysiopraxis soll ich eine Datenbank erstellen.

Hoffentlich unter Berücksichtigung der gesetzlichen Bestimmungen und dem dicom-Standard? Für medizinische Praxen gelten andere Regeln, als für z.B. eine Handelsfirma. Ob das für eine Hundephysiopraxis zutrifft, kann ich allerdings nicht beurteilen, solltest du aber im Vorfeld abklären.

Habe ein Formular/Tabelle für Daten wie Patientenname,
Besitzer, Anschrift und weitere Daten.

gut

Habe dazu Access 2003 verwendet.

noch ok

Ein zweites Formular/Tabelle habe ich für verschiedene
Messungen erstellt.

ok

Die Patientennummer des ersten Formulares steht auf Autowert.

ok

Über einen Button soll das zweite Formular geöffnet werden und
bestimmte Daten des ersten Formulars angezeigt werden.

docmd.open …mit where-Klausel
also kein Problem

Das funktioniert, wenn in beidem Formularen/Tabellen der selbe
Datensatz mit der selben Patientennummer angelegt ist.

es sollte die gleiche Pat-Nr in beiden Tabellen vorhanden sein.
1 x in der Pat-Tabelle
n x in der Messwertetabelle
es sollte eine Beziehung mit (referentieller Integrität) zwischen beiden Tabellen bestehen.

Gibt es eine Möglichkeit, die Daten des ersten Formulares
nicht nur in die dazugehörige Tabelle zu schreiben, sondern
automatisch auch in die zweite Tabelle damit man die Eingabe
nicht zweimal manuell vornehmen muss?

Denkfehler, das macht man nicht, sondern man führt einfach beide Tabellen über eine Abfrage zusammen.
Diese Abfrage nutzt man dann als Datenbasis für das zweite Formular.
oder
man erstellt ein Formular Messwerte, als Datenbasis die PAT-Tabelle und ein UFO für die Messwerte, mit Datenbasis der Messwert-Tabelle.

Bislang verwende ich im zweiten Formular ein Kombinationsfeld
um die Patientennummer auszuwählen und einzutragen (damit
keine Verwechslungen bei der Suche entstehen).

überflüssig, denn auf dem Pat-Formular gibt es einen Button der das zweite Formular öffnet, passend zur Pat-Nummer, da muss dann nichts mehr zusätzlich eingetragen werden.

Es ist aber umständlich und ärgerlich, die restlichen Daten jeweils
zweimal einzutragen.

das ist auch das falsche Konzept und nicht nötig, da beide Tabellen miteinander über die Abfrage verbunden sind, kannst du direkt auf diese Daten der PAT-Tabelle zugreifen.

Mein gut gemeinter Rat: mit deinen minimalen Access-Kenntnissen solltest du die Finger von der Sache lassen.
Eine Praxis- / Patientenverwaltung ist nicht mal eben so programmiert!

Grüße aus Rostock
Wolfgang
(Netwolf)