Entitätstyp

Entitätstypen sind z.B. Person oder Bestellung. Sie werden mit Rechtecken dargestellt.

graph
	PERSON 

Entitätstypen und Entitäten

Entitäten sind Ausprägungen von Entitätstypen, z.B. “Peter mit der Personalnummer 5”.

Attribute

Attribute sind Eigenschaften von Entitäten, sie haben Werte. Sie werden mit Ellipsen dargestellt.

graph LR
	PERSON --- id1([Name])

Primärschlüssel

Primärschlüssel sind Attribute, die die Entität eindeutig beschreiben. Es kann keine zwei Entitäten mit gleichem Primärschlüssel geben. Primärschlüssel sind unterstrichen.

graph LR
    KUNDE --- id1([<u>Kundennummer</u>])

Bei Zusammengesetzten Primärschlüsseln bilden mehrere Attribute den Primärschlüssel.

graph LR
    BESTELLPOSITION --- id1([<u>Bestellnummer</u>])
    BESTELLPOSITION --- id2([<u>Artikelnummer</u>])

Unterattribute

Attribute können aus mehreren Unterattributen zusammengesetzt sein.

graph LR
	PERSON --- id1([Adresse])
	id1 --- id2([Straße])
	id1 --- id3([Hausnummer])

Mehrwertige Attribute

Mehrwertige Attribute sind Attribute, die mehrere Werte haben können. Sie werden doppelt eingekreist.

graph LR
    PERSON --- id1([<span style="border: 2px solid grey; border-radius: 32px; padding: 4px; margin: 4px;">Telefonnummern</span>])

Beziehungen

Beziehungen werden mit Rauten dargestellt. Die Beziehungsart wird an die Linien geschrieben.

graph LR
PERSON-- 1 ---b{besitzt}
b-- N ---HAUSTIER
  • 1:N
    • Ein hat beliebig viele
    • Ein gehört zu einem
  • N:M
    • Ein hat beliebig viele
    • Ein hat beliebig viele
  • 1:1
    • Ein hat ein
    • Ein gehört zu einem

1:1-Beziehung

Statt einer 1:1-Beziehung kann man sich auch oft die Beziehung sparen und alles in einem Entitätstypen modellieren.

Rekursive Beziehungen

Eine Rekursive Beziehung ist eine Beziehung eines Entitätstypen ist eine Beziehung mit sich selbst. Dabei sind Rollennnamen zur Unterscheidung notwendig. Diese werden an die Rautenenden geschrieben.

graph TB
PERSON-- N<br>Mitarbeiter ---b{ist Chef}
b-- 1<br>Chef ---PERSON

Beziehungsattribute

graph LR
PERSON-- N ---b{nimmt Teil}-- M ---Termin
b --- id([wann Zugesagt])

Schwache Entitätstypen

Ein schwacher Entitätstyp ist existenzabhängig von einem anderen Entitätstypen. Er hat keinen eigenen Primärschlüssel, stattdessen wird er von einer anderen Entität vererbt und erweitert.

Schwache Entitätstypen werden doppelt umrahmt, genauso auch die Beziehung. Die erweiterten Primärschlüssel werden unterstrichelt.

Beispiel: Raum und Gebäude. Ein Raum kann nicht ohne das Gebäude existieren, er ist also existenzabhängig und damit ein schwacher Entitätstyp.

Merken

Schwache Entitätstypen können nur an einer 1:N Beziehung sein, und zwar gegenüber von der 1

N:M- vs. zwei 1:N-Beziehungen

  • Bei einer N:M-Beziehung kann es keine Beziehungen zwischen gleichen Entitäten doppelt geben
  • Dieses Problem wird mit zwei 1:N-Beziehungen und einem schwachen “zwischen-Entitätstyp” mit schwachem Primärschlüssel gelöst

Ternäre Beziehungen

Generalisierung