Entity-Relationship-Modell

Jul 20, 2024

Entity-Relationship-Modell

Einführung

  • ER-Modell: Planung der Datenbankstruktur vor der Programmierung
    • Vermeidung von Fehlern
    • Verständnis der Zusammenhänge zwischen den Tabellen
  • Ziel: Geeignete Entwürfe für die Datenbank erhalten
  • Nutzung: Nicht nur für relationale Datenbanken, auch für andere Situationen
  • Heutzutage werden oft UML-Diagramme genutzt (übersichtlicher)
  • Wichtig: ER-Modell zur Verbesserung und Planung der Datenbankstruktur vor der Programmierung

Bestandteile des ER-Modells

  1. Entities (Objekttypen)
    • Objekte aus der realen Welt
    • Beispiel: Tabellenname
  2. Attribute
    • Eigenschaften der Entities
    • Beispiel: Spalten der Tabelle
    • Einfache Datentypen (z.B. Integer)
  3. Relationships (Beziehungen)
    • Beschreiben, ob Entities in Beziehung stehen
    • Primärschlüssel werden unterstrichen
    • Foreign Keys (Fremdschlüssel) sind implizit durch Relationships

Beziehungstypen

  • 1:1 Beziehung (Eins-zu-Eins Beziehung)
    • Zwei Pfeile, je mit einer „1“ markiert
    • Beispiel: Jeder Fahrer fährt höchstens ein Auto und jedes Auto wird von höchstens einem Fahrer gefahren
  • 1:N Beziehung (Eins-zu-Viele Beziehung)
    • Ein Pfeil zur „1“ Seite, ein „M“ zur anderen Seite
    • Beispiel: Jeder Manager managed mehrere Bands, aber jede Band wird von nur einem Manager gemanagt
  • M:N Beziehung (Viele-zu-Viele Beziehung)
    • Kein Pfeil, markiert mit „M“ und „N“
    • Beispiel: Jeder Laden kann mehrere Artikel führen und jeder Artikel kann in mehreren Läden verfügbar sein

Wichtige Hinweise

  • Keine Mindestanzahl-Angaben in den Beziehungen

Beispiel: Buch und Autor

  • Entities: Buch, Autor
  • Attribute für Buch: Buch-ID (Primärschlüssel, unterstrichen), Name, Genre, Preis
  • Attribute für Autor: Autor-ID (Primärschlüssel, unterstrichen), Vorname, Nachname
  • Beziehung: ein Autor schreibt mehrere Bücher, aber jedes Buch wird in der Regel nur von einem Autor geschrieben

Zusammenfassung

  • ER-Modell zur Planung und Verbesserung der Datenbankstruktur vor der Programmierung
  • Drei Bestandteile: Entities, Attribute, Relationships
  • Verschiedene Beziehungstypen: 1:1, 1:N, M:N

Weiterführende Information

  • Weitere Infos auf simpleclub.de und in der simpleclub-App.