# ms Acsess



## mudderbaimer (30. April 2003)

Moin Moin

Hab da mal so'ne Frage. Ich arbeite in einem Krnakenhaus und habe foplgendes Problem: Ich will eine Abfrage erstellen die wenn ich ein bestimmten Artikel eingebe mir anzeigt in welchen OP's dieser Artikel vorhanden ist anzeigt. Nun sind meine Access Kenntnisse so bescheiden das ich noch nicht mal mehr hinbekomme das ich einer OP mehrere Artikel zuordnen kann.

Ich dachte mir das so das ich ein Feld nehme in dem ich den Namen der OP angebe und dann X Felder für die Materialien die dort verwendet werden. Ist das der richtige weg? und wie soll die Abfrage dann aussehen.

Bis dann
Mudderbaimer


----------



## dexterward (30. April 2003)

Lade Dir mal diese Skripte runter:

http://v.hdm-stuttgart.de/~riekert/lehre/db.pdf
http://v.hdm-stuttgart.de/~riekert/lehre/db2.pdf

für dich wichtig ist das Entinitäten-Relationship-Model und natürlich wie Du es umsetzt.

Gruss


----------



## mudderbaimer (30. April 2003)

Naja so ähnlich meinte ich das auch...

So nun habe ich aber das Problem das ich keine Ahnung habe wie ich jetzt das Formular anlegen soll

Mal ganz einfach:

Ich habe 3 Freunde, von denen 2 in einer Straße wohnen, gehen wir mal davon aus das ich diese Leute in einer Datenbank erfasst habe die aus 2 Zeilen besteht: 1. Name 2. Straße

Ich möchte nun ein Formular, das mir sagt, wenn ich die Straße angebe, welche meiner Freunde in dieser Starße wohnen.

Ich dachte da so an ein Eingabefeld, mit einem einfachen cmd Button und einem Listenfeld welches mir die Ergebnisse meiner Suche ausgibt.


----------



## mudderbaimer (30. April 2003)

Also hier einfach mal die Tabelle:

Ich will ein Eingabefeld haben in das ich eines der Materialien mat1, mat2, mat3... etc eingeben kann, dann will ich einen einfachen Button haben der dann eine Suchfunktion auslöst und zwar einfach nur nach dem Artikel der im Eingabefeld steht und möchte dann eine Ausgabe in einem Textfeld


----------



## Spacemonkey (30. April 2003)

So wie ich deine Datenbank verstehe, soltest du sie erstmal richtig aufbauen.
Du solltest vielleicht mal alle Materialien in eine Tabelle packen, wie z.B. Medikamente mit den Datenfeldern ID,Artikel. Dort kannst du dann alle Artikel eintragen. Somit ist es einfacher später was zu ändern.
Dann brauchst du noch eine Tabelle mit den OPs und eine ID dazu. Und dann brauchst du noch eine Tabelle, die diese beiden verbindet.
Mit dem Formular kann ich momentan nicht helfen, das weiß ich nicht mehr so genau wie es geht.


----------



## SilentWarrior (30. April 2003)

> Und dann brauchst du noch eine Tabelle, die diese beiden verbindet.


wie? seit wann braucht man denn eine dritte tabelle für beziehungen? die kann man in access doch einfach festlegen, ohne tabelle oder igendwelchen zusätzlichen kram. korrigiert mich, wenn ich da falsch liege.


----------



## Spacemonkey (1. Mai 2003)

Kann auch sein, das ich mich täusche.aber ich habe glaube ich irgendwann mal sowas gelernt.


----------



## dexterward (1. Mai 2003)

Natürlich wird eine dritte Tabelle benötigt, da es sich um eine m zu m Beziehung handelt. Soll heißen eine Art von Materialien kann in mehreren OPs zum Einsatz kommen und jeder OP kann mehrere Materialen haben. Also benötigst Du eine dritte Tabelle, in der der Primarykey aus den Primarykeys der anderen beiden Tabellen besteht.

Ich kann Dir nur dringend raten Deine DB konsistent aufzubauen.

Gruss

//edit: Hab mir gerade Deine Test-DB angeschaut, ist völliger Schrott.
Also eine Tabelle mit den OPs, eine mit den Materialen und eine wo du beide, wie oben beschrieben, verbindest. Lies Dir die Skripte durch!!!

Viel Erfolg


----------



## Thomas Darimont (1. Mai 2003)

Servus!

@Dexterward ... das kann man auch anders sagen ... wenn du schon jemanden krtitisieren willst, dann lass diese Kritik aber auch von konstruktiver Natur sein, denn einfach nur zu sagen "... ist völliger Schrott..." bringt auch niemanden weiter!

ausserdem heissen solche Beziehungen wie du sie ansprichst nicht m zu m sondern ... m zu n.

Gruss Tom


----------



## dexterward (1. Mai 2003)

@tdar2
Das war absolut nicht böse gemeint, man kann es natürlich ein wenig feinfühliger ausdrücken. Aber schau es Dir an, es ist Schrott.
Ich muss aber auch sagen, daß man fast nicht noch konstruktiver sein kann als ich es war. Höchstens man macht die DB gleich selber.

Und "ausserdem"  gibt es x-verschiedene Bezeichnungen für eine m zu n Beziehung, je mnach Literatur. Zum Beispiel "mc zu mc" und und und...

Ich werde ab dem nächsten Post auf meine Ausdrucksweise achten, um keinen auch nur irgendwie zu verletzten...

Gruss


----------



## Thomas Darimont (1. Mai 2003)

Servus!

Solche User lob ich mir ...

alles klar und nix für ungut!

Gruss Tom


----------



## mudderbaimer (5. Mai 2003)

Also wenn ich das jetzt richtig verstanden habe brauche ich eine Tabelle mit allen OP's und eine Tabelle mit allen Matrialien, gut das sollte kein Problem sein. ABER: Wie bekomme ich es dann hin das die Artikel der OP zugeordnet werden? Ich meine wäre es nur ein Artikel zu jeder OP wäre das ja kein Problem aber so???

Wäre nett wenn mir jemand da weiterhelfen könnte


----------



## dexterward (5. Mai 2003)

Die Tabelle OPs besteht aus den Attributen:
- OP-Nummer (Wert Auto und Primarykey)
- OP-Name

Die Tabelle Material besteht aus den Attributen:
- Materialnummer (Wert Auto und Primarykey)
- Materialname

Je nach Bedarf kann Du natürlich noch mehr Attribute aufnehmen.

Die dritte Tabelle, nennst Du z.B. Inventar, besteht aus den Attributen OP-Saal-Nr. und Materialnr..
Hier werden die Primarykey-Werte der entsprechenden Datensätze der anderen beiden Tabellen eingeben.

Du musst nur noch die drei Tabellen über die Beziehungfunktionen in Access miteinander verbinden.

Wie das im genauen funtkioniert steht in den Skripten vom ersten Link.

Gruss


----------

