Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Grundlegende Frage

Begonnen von accessneuling, September 16, 2010, 14:13:35

⏪ vorheriges - nächstes ⏩

accessneuling

Hallo liebe Access-o-Mania community.
Ich beschäftige mich jetzt seit circa 2 wochen mit access, allerdings stecke ich jetzt grundsätzlich in der klemme - habe seit ein paar tagen versucht mir eine lösung zu "ergoogeln", jedoch leider ohne erfolg. Zu meinem Problem: Ich habe eine Stationsdatenbank für ein Kinderkrankenhaus erstellt. Diese Datenbank enthält folgende Tabellen: tabMain, tabDiagnose, tabHivstatus und tabMother. Diese Tabellen sind für für die neugeborenenstation. Als Primärschlüssel dient mir die "Folder Number" - 7-10 stellige Zahl, einmalig für jeden Patienten. Die Tabellen sind per 1:1 verknüpft. Nun habe ich das Problem, dass ich die Daten nicht vernünftig über die Formen verändern kann, es wird bei jedem dlookup versucht einen neuen datensatz anzulegen. Als ich die Datenbank begonnen habe, schien mir die Aufteilung in 4 Tabellen mit 1:many Verknüpfung sinnvoll, dann habe ich sie durch die o.g. 1:1 ersetzt. Nun zu meiner eigentlichen Frage: Sollte ich eurer Meinung nach das gesamte Datenbankkonzept nochmal umwerfen, und statt die Daten auf 4 Tabellen aufzuteilen alles lieber in einer Tabelle unterbringen? Mfg

DF6GL

Hallo,


wirf das Konzept über den Haufen   ;)

Verzichte auf 1:1-Beziehungen und halte Dich an die Regeln der Normalisierung  (s. u. st. Links)
KEINESFALLS alle Daten in EINE Tabelle


Weiterhin wäre zunächst zu fragen, was die DB eigentlich leisten soll, d. h. deren Aufgabe es ist.

Es müssen erst alle vorhandenen Daten geklärt/sortiert/gruppiert und in Beziehung zueinander gesetzt werden. Am BEsten auf einem Stück Papier.

Unter "Stationsdatenbank für ein Kinderkrankenhaus"  kann man sich von wenig bis sehr viel vorstellen...


accessneuling

Danke für die schnelle Antwort. Die Stationsdatenbank soll alle Neugeborenen unter 30 Tage aufnehmen, die mit einer Behinderung geboren wurden. Diese Datenbank soll Anschrift und alle Hauptangaben des Kindes enthalten (wann geboren, Name, Anschrift der Eltern falls vorhanden), ausserdem soll es eine vorgefertigte Eingabemöglichkeit für die Primär- und Sekundärdiagnosen geben (Art der Missbildung etc.). Desweiteren soll es die Möglichkeit geben den HIV-Status von Mutter und Kind aufzunehmen (mit den möglichen Tests und Behandlungsmöglichkeiten - großes Thema in Afrika). Ausserdem soll in der Datenbank festgehalten werden ob die Mutter während der Schwangerschaft Drogen konsumiert, geraucht oder Alkohol getrunken hat.
Die Arbeit ist sehr wichtig für das Krankenhaus und ich mache es als freiwillige Arbeit. Mir wurde gesagt, dass eine solche Datenbank dringend benötigt wird und ich habe zugesagt, dass ich mein möglichstes versuchen werde.
Ach ja, die DB wird von einer Stationsschwester und 2-3 Ärzten genutzt werden - möglicherweise auch über das Netzwerk/Intranet der Klinik.
Vielen Dank im Vorraus für eure Hilfe!

oma

Hallo,

ZitatIch beschäftige mich jetzt seit circa 2 wochen mit access, allerdings stecke ich jetzt grundsätzlich in der klemme - habe seit ein paar tagen versucht mir eine lösung zu "ergoogeln", jedoch leider ohne erfolg

2 Wochen für eine Entwicklungsumgebung ist nicht  zuviel :D

Du musst bedenken:
Ohne deine Aufgabenstellung konkret zu kennen, vermute ich ml, dass es ziemlich komplex wird. Du musst kenntnisse haben
1. Prinzip einer relationalen DB (Normalisierungsregeln
2. Kenntnisse über Access-Objekte sowie den Umgang damit
3. VBA - Kenntnisse
4. SQL - Kenntnisse

(ohne nun gleich mit den höchsten  Anforderungen)
und sowas lässt sich nicht in ein paar Tage zusammengoogeln

Damit du weiterkommst; erkläre hier im Forum zunächst eine grobe Aufgabenstellung und deinen bisherigen dazu gehörenden Tabellenaufbau (Mit Feldbezeichnungen u. Schlüsselerklärungen)

Wenn nach Diskussion im Forum der Tabellenaufbau "fertig" ist, gehts dann viel rascher voran

Gruß Oma


nichts ist fertig!

oma

Hallo,

nach ersten Überlegungen brauchst du folgende Tabellen:

tblKind mit
Kind_ID,  Eltern_ID,  Arzt_ID, Vorname, Nachname, GeburtDatum, GeburtGewicht, ......

tblKindBefund mit
Kind_ID, Befund (evt. ICD-Schlüssel?),  BefundText...


tblEltern mit
Eltern_ID, Vorname, Nachname, Geburtdatum, Verwandschaft, Wohnort, Straße, PLZ.....

tblElternBefund mit
Eltern_ID, Mermal(Alkol, Drogen usw.),  Status(Ja/nein zum merkmal) , Erklärungen,....

tblArzt mit
Arzt_ID, Nachname, Vorname,.....

evt. auch tblMerkmale   mit
Mermal_ID, Merkmal.....

Überlege die Vollständigkeit dieser Tabellen und die Vollständigkeit der felder in den Tabellen!!

Gruß Oma
nichts ist fertig!

accessneuling

Hi Oma, danke für deine ausführlichen Antworten. Das sieht auf jeden Fall schonmal solider aus als das was ich mir bisher überlegt habe. Allerdings rätsel ich immernoch etwas, wie ich die ganzen tabellen später anständig über Formen verbunden bekomme. Ich denke ich werde mir bis morgen mal Gedanken über den Gesamtumfang der Tabellen machen, und dann nochmal etwas schreiben. Vielen Dank schonmal, für die Basis die du für mich gelegt hast, liebe Oma.

MfG

oma

Hallo,

wichtig ist wirklich erst die Tabellengestaltung.

Mache dir noch keinen Kopf über die Formulargestaltung, dass geht bei vernünftigen Tabellenaufbau  oft leichter als du dir das jetzt vorstellst.

Die Tabellen werden werden dann zumeist mit Haup- Unterformularkonstruktionen verknüpft, so dass der spätere Benutzer garnicht merkt, dass Daten aus verschiedenen Tabellen zusammnegefügt werden!

Du kannst ja dein Tabellenkonzept nach Überlegungen hier vorstellen bzw. zu meinen Entwurf Fragen stellen.


Gruß Oma
nichts ist fertig!

accessneuling

#7
Hi Leute,

habe Omas Tabellenkonzept weitesgehend uebernommen und habe nun folgende Tabellen:

tblChild
ChildID, ParentsID, DocID, Firstname, Lastname, Sex, ReferringUnit (Sex ist Geschlecht, Referring Unit das ueberweisende Krankenhaus) [ChildID ist die FolderNumber vom Kind und gleichzeitig Primärschlüssel, ParentsID soll Autowert sein, Doc ID ebenfalls Autowert, Vor- und Nachname sind Textfelder, Sex ist Combobox männlich, weiblich und unklar, Referring Unit soll einige Krankenhäuser aus dem Umfeld enthalten - auch Combobox]
tblDoc
DocID, Firstname, Surname
tblChildDiagnose
ChildID, DiagnosePrimary, DiagnoseSecondary, Complications, DelayDiag, DiagnoseDelayedSince, HIV-Status, HIVtreat
ChildID ist hier mit ChildID aus tblChild verknuepft (one to many?), Diagnose Primary und Secondary sollen aus einer Liste von vielen möglichen Diagnosen gefuettert werden (tblDiagnoses), Complications soll ein Memofeld sein, DelayDiag ein Ja-Nein Feld um anzuzeigen ob die Diagnose verzögert wurde, DiagnoseDelayedSince soll daraufhin das Datum der Diagnoseverzögerung enthalten, HIV-Status ist entweder positiv oder negativ, HIVtreat soll aus möglichen Behandlungen aus tblHIVtreat gefüttert werden.
tblParents
ParentsID, Firstname, Lastname, DateofBirth, FamilyHistory, Street, City, PostalCode, Phone
ParentsID ist hier Autowert und soll via one to many mit tblChild und tblParentsDiagnose verknüpft sein, First und Lastname sind wieder Textfelder, DateofBirth ein Datumsfeld, Family History ein Memofeld, der Rest ist selbsterklärend
tblParentsDiagnose
ParentsID, Drugs, Alcohol, Smoking, Details, HIV-Status, HIVtreat
ParentsID ist hier sekundärschlüssel, Drugs soll eine Liste möglicher Drogen enthalten, Alcohol und Smoking soll jeweils ein Ja-Nein Feld sein, Details soll ein Memofeld sein welches Details zu Drogen, Alk und Rauchen enthält, HIV-Status ist Ja-Nein und HIVtreat soll aus tblHIVtreat gefüttert werden.
HIVtreat
Childtested, Mothertested, Childtreated, Mothertreated, MotherCD4, Babyprophylaxis, BabyPCR, CommentsHIV
Childtested ist Ja-Nein, genau wie Mothertested, Childtreated, Mothertreated, Mother CD4,  BabyProphylaxis und BabyPCR, CommentsHIV ist ein Memofeld
tblDiagnoses
ICD-Codes und Namen von vielen möglichen Diagnosen, auch mit Details

Danke für eure Hilfe, ich hoffe es ist nicht zu unübersichtlich. Ich bräuchte auch noch tipps zu relationen und löschweitergaben.