Seite 1 von 1

Frage zu Grundlagen des ERM (DB-Theorie)

Verfasst: 09.04.2007 11:18
von Souli
Ahoi,

heute mal eine Frage, wie man eigentlich folgendes Gebilde 'liest':

[ externes Bild ]

Die roten Einsen bedeuten 1 zu 1.
Eine Tabelle würde also so aussehen:
ID | Fahrer | PKW
1 | Klaus | Seat
2 | Peter | Porsche

Jeder Fahrer fährt genau ein Fahrzeug und dieses Fahrzeug wird
von genau einem Fahrer gefahren. Im gezeigten Fall fährt jeder Fahrer
immer das gleiche Auto.

Wie aber lese ich nun die (1,1), die ja in der Grafik zusehen ist?
Deswegen habe ich mal die blauen Zahlen da oben reingeschrieben.
Die haben ja ansonsten im ERM nichts zu suchen. :wink:

Ich interpretiere das so:

Ein Fahrer (1) fährt genau einen PKW (2).
Ein PKW (3) wird von genau einem Fahrer (4) gefahren.

Ist das so korrekt?

Danke
Souli

Verfasst: 09.04.2007 11:37
von Miriam
Das ist richtig ---> Klick

Verfasst: 09.04.2007 11:44
von Souli
Super !

Dankeschön

Souli

Verfasst: 09.04.2007 12:27
von Souli
Auweia...
da habe ich jetzt doch noch eine Frage. :wink:

Folgendes Beispiel:

[ externes Bild ]
(aus: http://www.ism.co.at/analyses/Database/DATABASE.pdf)

Ein Paar kann mehrere Kinder haben, ein Kind jedoch nur einen
Vater und eine Mutter.

Das verstehe ich noch nicht so ganz. Wie muss ich es formulieren?

Vorschlag 1:
Ein Kind (1) kann nur zu einem Paar (3) gehören.
Ein Paar (4) kann mehrere Kinder (2) haben.

Vorschlag 2:
Ein Kind (1) kann nur zu einem Paar (4) gehören.
Ein Paar (3) kann mehrere Kinder (2) haben.

Beide Vorschläge würden gehen...oder?

Aber dann wäre mein Eingangsposting falsch.

Wenn ich auf der linken Seite anfange [Ein Kind (1) bzw. ein Fahrer (1)],
wo mache ich dann weiter?

Danke
Souli

Verfasst: 09.04.2007 13:45
von PhilippK
Miriam hat geschrieben:Das ist richtig ---> Klick
Ist es nicht :-)

Man darf die Beziehung nicht mit den Kardinalitäten verwechseln. Bzw. die einfache Notation nicht mit der Min-Max-Notation.

Das in rot ist die Chen-Notation (einfache Notation). Sie entspricht dem Beziehungstyp, der mit Doppelpunkt geschrieben wird. Da gibt es drei Fälle: 1:1, 1:n und n:m.
Im ersten Beispiel heißt das, dass ein Fahrer (maximal) einen PKW fahren kann und ein PKW (maximal) von einem Fahrer gefahren werden kann.
Im zweiten Beispiel sagt das, was dasteht, aus: ein Paar hat (maximal) ein Kind, ein Kind hat (maximal) n Paare. Also ist das Beispiel falsch (aber mehr dazu später).

Das in schwarz ist Min-Max-Notation. Hier sind im Gegensatz zur einfachen Notation zwei Werte bei jeder Kardinalität angegeben: ein minimaler und ein maximaler (n steht hier für beliebig viele). Außerdem sind die Werte im vergleich zur einfachen Notation vertauscht. (Man kommt also von der Min-Max ganz einfach zur normalen, in dem man nur den Max-Wert nimmt und die beiden Werte vertauscht)
Die Aussagen sind also:
ein Fahrer fährt mindestens 1, maximal 1 PKW; ein PKW wird von mindestens 1, maximal 1 Fahrer gefahren
ein Kind hat mindestens 1, maximal unendlich (n) Paare; ein Paar hat mindestens 1, maximal 1 Kind.

Allerdings sind die Beispiele auch schlecht: im ersten Beispiel kommt eine 1:1-Beziehung vor. Die sind aber in der Praxis recht selten. Das zweite Beispiel ist falsch, da die Beziehungsangaben vertauscht sind. Außerdem ist "Paar" keine saubere Entität, da ein Paar ja aus Mann und Frau zusammengesetzt ist.

Siehe auch http://de.wikipedia.org/wiki/Entity-Relationship-Modell

Gruß, Philipp

Verfasst: 09.04.2007 14:58
von Souli
Ahoi,
vielen Dank für die Erklärung.
Ich denke, jetzt habe ich es kapiert. :P

Dazu mal ein anderes Beispiel:

[ externes Bild ]

Also...
nach Chen haben wir n:1 (sprich: n zu 1)
Viele Arbeiter (aber mindestens einer) arbeiten in einer (und zwar nur in einer einzigen) Firma.
Eine Firma (und zwar nur eine einzige) hat viele Arbeiter (aber mindestens einen).
Das n bedeutet ja immer mindestens einen.
Wie kann man denn den Fall 'Viele (n) oder Keinen (0)' ausdrücken ?
Mir fällt dazu gar kein Beispiel ein...Hmmm, gibt es das überhaupt? :wink:

OK, zurück zum Beispiel:
Nach der Min-Max-Notation haben wir folgende Situation:
Ein Arbeiter arbeitet in mindestens einer (1) und höchstens einer (2) Firma.
In einer Firma arbeiten mindestens ein (3) oder aber viele (4) Arbeiter.
Das n symbolisiert hier, dass theoretisch unendlich viele Arbeiter in der Firma arbeiten.

Und tatsächlich, wenn ich aus der Min-Max-Notation die jeweiligen
Max-Werte nehme und vertausche, erhalte ich n:1.
Das habe ich wohl begriffen. :o

Wenn das man so einfach wäre...
Ich habe eben ein anderes Beispiel gefunden, dass dem bisherigen
widerspricht *grmbl*

Hier mal das Beispiel:
[ externes Bild ]

Der Text dazu:
Jede Abteilung wird von einem Mitarbeiter geleitet.
Jeder Mitarbeiter kann keine oder maximal eine Abteilung leiten.

Ich interpretiere das nach Chen als 1:1.
Meine Beschreibung würde allerdings so lauten:
Ein Mitarbeiter leitet mindestens eine (1) und maximal eine (2) Abteilung.
Eine Abteilung wird von mindestens keinem (3) und maximal einem (4)
Mitarbeiter geleitet.
...macht ja nicht viel Sinn...es könnte Abteilungen ohne Abteilungsleiter geben.

Ich habe wohl doch noch die Zahlen vertauscht oder?

Wenn ich mir die Mitarbeiter ansehe, dann nehme ich die Ziffern
(1) und (2) für die Beschreibung.
Ist das falsch?
Muss ich die Ziffern (3) und (4), also die der anderen Entität benutzen?

Danke
Souli

Verfasst: 09.04.2007 15:22
von PhilippK
Souli hat geschrieben:Wie kann man denn den Fall 'Viele (n) oder Keinen (0)' ausdrücken ?
Mir fällt dazu gar kein Beispiel ein...Hmmm, gibt es das überhaupt?
Eine Frau kann viele Kinder haben oder auch keines :roll:

Ansonsten noch vielleicht von der Ausdrucksweise:
Das n symbolisiert hier, dass theoretisch unendlich viele Arbeiter in der Firma arbeiten können.
Ich habe wohl doch noch die Zahlen vertauscht oder?
Jupp. Deine Firma besteht nur aus Abteilungsleitern ;-)
Wenn ich mir die Mitarbeiter ansehe, dann nehme ich die Ziffern
(1) und (2) für die Beschreibung.
Richtig. Ein Mitarbeiter muss keine, kann aber maximal eine Abteilung leiten.

Gruß, Philipp

Verfasst: 09.04.2007 15:34
von Miriam
PhilippK hat geschrieben:
Miriam hat geschrieben:Außerdem ist "Paar" keine saubere Entität, da ein Paar ja aus Mann und Frau zusammengesetzt ist.
Genau ---> Oder ein Paar Schuhe.

Verfasst: 09.04.2007 15:37
von Souli
Moinsen,

Hier habe ich ein PDF gefunden:
http://www.ism.co.at/analyses/Database/DATABASE.pdf
Dort steht das Beispiel mit den Mitarbeitern und den Abteilungsleitern
auf Seite 20.
Mitarbeiter (1,1) leiter (0,1) Abteilung
und darunter steht tatsächlich:
-----
Es gibt die Entitätstypen "Mitarbeiter" und "Abteilung", sowie die Beziehung
"leitet". Jede Abteilung wird von einem Mitarbeiter geleitet. Jeder
Mitarbeiter kann keine oder maximal 1 Abteilung leiten.
-----

Dann hat sich da wohl ein Fehler eingeschlichen.
Das ist ja allgemein das Risiko bei fremden Quellen. *g*

Es müsste also so aussehen, damit die Aussage stimmt:
[ externes Bild ]

Ein Mitarbeiter leitet keine (1) oder maximal eine (2) Abteilung.
Eine Abteilung wird von mindestens einem (3) oder maximal einem (4)
Mitarbeiter geleitet.

Danke
Souli