Sophia

Aus ProgrammingWiki

Inhaltsverzeichnis

Datenbankprojekt: Datenbank einer Arztpraxis


Ziel der Datenbank

Die Datenbank dient dazu, Informationen über Arztpraxen, Ärzte, Patienten und deren Diagnosen strukturiert zu verwalten. So können z.B. mehrere Ärzte und deren Patienten sowie die gestellten Diagnosen erfasst und verwaltet werden. Ich habe dieses Thema gewählt, weil ich mir im Gesundheitswesen den Einsatz einer solchen Datenbank als besonders sinnvoll und nützlich vorstelle. In einer Arztpraxis fallen täglich viele zusammenhängende Informationen an, etwa zu Ärzten, Patienten und Diagnosen, die zuverlässig und übersichtlich verwaltet werden müssen. Eine strukturierte Datenbank erleichtert das schnelle Wiederfinden, reduziert Fehler durch Speicherung und unterstützt effizientere Abläufe.


Modellierung in einem ERM-Modell

SoPau_ER-Modell_Paufler.png

Transformation in das Relationenmodell

SoPau_Relationen_Modell_jpg.jpg

Merkmale des Modells

1) Entitäten:

Arzt:

  • Primärschlüssel: Arzt_ID
  • Attribute: Vorname, Nachname, Geburtsjahr

Arztpraxis:

  • Primärschlüssel: Arztpraxis_ID
  • Attribute: Telefonnummer, Anschrift, Postleitzahl, Spezialisierung

Patienten:

  • Primärschlüssel: Patient_ID
  • Attribute: Vorname, Name, Geburtsjahr, Wohnort, Krankenkasse

Diagnose

  • Primärschlüssel: Diagnose_ID
  • Attribute: Informationen


2) Beziehungen und Kardinalitäten

Arzt besitzt Arztpraxis: 1:1

  • Ein Arzt ist genau einer Arztpraxis zugeordnet
  • Eine Arztpraxis gehört genau zu einem Arzt

Arzt behandelt Patienten: n:m

  • Ein Arzt kann viele Patienten behandeln
  • Ein Patient kann von vielen Ärzten behandelt werden
  • Konsequenz fürs Datenmodell: Zwischentabelle, ArztBehandeltPatient mit Arzt_ID und Patient_ID als Fremdschlüssel, mit zusammengesetzten Primärschlüssel aus beiden

Patient erhält Diagnose: 1:n

  • Ein Patient kann mehrere Diagnosen haben
  • Jede einzelne Diagnose gehört genau zu einem Patienten

Erstellen der DB


Erstellen von verschiedenen Abfragen

Abfrage aller Arztpraxen mit Spezialisierung "Pädiatrie"

Abfrage aller Patienten, die in Berlin leben

Abfrage von Patienten und ihren behandelnden Ärzten

Abfrage der Diagnose von Peter Becker

Abfrage der Diagnosen pro Patient

Kritische Reflexion zu Modellierung und Umsetzung

Die Datenbank hat eine klare Tabellenstruktur, in der jede Entität eigenständig modelliert ist. Die Trennung in Arztpraxis, Arzt, Patient und Diagnose verhindert Datenwiederholungen und unterstützt die Normalisierung. Die Felder sind atomar, wie es die 1. Normalform verlangt, da die Informationen in passenden Spalten getrennt gespeichert werden. Jede Tabelle besitzt einen eindeutigen Primärschlüssel, wodurch keine Teilabhängigkeiten entstehen und die zweite Normalform erfüllt ist.

Verbesserungen: Einige Entitäten könnten auch anders modelliert werden. Häufig teilen sich mehrere Ärzte eine Praxis, dann wäre Arztpraxis 1:n zu Arzt passender und die UNIQUE Einschränkung bei Arztpraxis_ID müsste weg. Auch die Beziehung Arzt behandelt Patient könnte als eigene Entität Behandlung umgesetzt werden, sobald zusätzliche Informationen wie Datum, Therapie oder Notizen gespeichert werden sollen. Bei Diagnose kann Redundanz entstehen, wenn viele Patienten dieselben Diagnosen als Text erhalten, dann wäre eine eigene Tabelle für Diagnosearten sinnvoll und eine Verknüpfungstabelle für Patientendiagnosen.

Verwendete Quellen, Tools, etc.

  • ERDplus