Zum Inhalt springen
Read this post in: de_DEen_USes_ESfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW
Home » Data Modeling / Database » Ein Online-Buchhandel erstellen: Datenmodellierung mit ERD und DBML

Ein Online-Buchhandel erstellen: Datenmodellierung mit ERD und DBML

Datenmodellierung ist der Prozess der Erstellung einer visuellen Darstellung der Daten und ihrer Beziehungen in einer Datenbank. Ein der am häufigsten verwendeten Werkzeuge für die Datenmodellierung ist das Entity-Relationship-Diagramm (ERD), das grafische Symbole verwendet, um Entitäten, Attribute und Beziehungen darzustellen. In diesem Artikel werden wir den Prozess der Datenmodellierung mit einem ERD untersuchen und Beispiele dafür liefern, wie er in realen Szenarien eingesetzt werden kann.

Was ist ein Entity-Relationship-Diagramm (ERD)?

Ein ERD ist eine grafische Darstellung von Entitäten, ihren Attributen und den Beziehungen zwischen ihnen. Entitäten sind Objekte oder Konzepte, die in der Datenbank dargestellt werden, wie Kunden, Bestellungen oder Produkte. Attribute sind Eigenschaften oder Merkmale von Entitäten, wie Name, Adresse oder Preis. Beziehungen sind Verbindungen zwischen Entitäten, wie ein Kunde, der eine Bestellung aufgibt.

ERDs bestehen typischerweise aus folgenden Komponenten:

  1. Entitäten: dargestellt als Rechtecke mit dem Entitätsnamen innerhalb.
  2. Attribute: dargestellt als Ovale, die durch eine Linie mit der zugehörigen Entität verbunden sind.
  3. Beziehungen: dargestellt als Diamanten, die Entitäten verbinden.

Die drei Arten von Beziehungen, die zwischen Entitäten bestehen können, sind:

  1. Ein-zu-eins (1:1): bei der ein Exemplar einer Entität mit einem Exemplar einer anderen Entität verbunden ist.
  2. Ein-zu-viele (1:N): bei der ein Exemplar einer Entität mit mehreren Exemplaren einer anderen Entität verbunden ist.
  3. Viele-zu-viele (N:M): bei der mehrere Exemplare einer Entität mit mehreren Exemplaren einer anderen Entität verbunden sind.

Beispiel der Datenmodellierung mit ERD

Betrachten wir ein Beispiel für einen Online-Buchhandel, der Bücher an Kunden verkauft. Der Buchhandel verfügt über mehrere Buchkategorien und eine große Anzahl von Kunden, die Bestellungen aufgeben können. Um dieses System mit einem ERD zu modellieren, können wir zunächst die beteiligten Entitäten, Attribute und Beziehungen identifizieren.

Entitäten:

  1. Buch: Stellt ein Buch im Buchhandel dar. Enthält Attribute wie Titel, Autor, ISBN und Preis.
  2. Kategorie: Stellt eine Kategorie oder ein Genre von Büchern im Buchhandel dar. Enthält Attribute wie Name und Beschreibung.
  3. Kunde: Stellt einen Kunden dar, der sich im Buchhandel registriert hat. Enthält Attribute wie Name, Adresse und E-Mail.
  4. Bestellung: Stellt eine Bestellung dar, die von einem Kunden aufgegeben wurde. Enthält Attribute wie Bestelldatum und Gesamtpreis. Verfügt außerdem über einen Fremdschlüsselverweis auf die Entität Kunde, der angibt, welcher Kunde die Bestellung aufgegeben hat.
  5. Buch_Kategorie: Stellt die viele-zu-viele-Beziehung zwischen Büchern und Kategorien dar. Enthält Fremdschlüsselverweise auf die Entitäten Buch und Kategorie.
  6. Bestellung_Buch: Stellt die viele-zu-viele-Beziehung zwischen Bestellungen und Büchern dar. Enthält Fremdschlüsselverweise auf die Entitäten Bestellung und Buch.

Beziehungen:

  • Ein Buch kann mehreren Kategorien angehören (Viele-zu-viele).
  • Eine Kategorie kann mehrere Bücher enthalten (Ein-zu-viele).
  • Ein Kunde kann mehrere Bestellungen aufgeben (Ein-zu-viele).
  • Eine Bestellung kann mehrere Bücher enthalten (Viele-zu-viele).

Mit diesen Entitäten, Attributen und Beziehungen im Hinterkopf können wir ein ERD für das Online-Buchhandelssystem erstellen. Das ERD würde ungefähr so aussehen:

ERD for bookstore

In diesem ERD-Diagramm sehen wir, dass die Entität Buch eine viele-zu-viele-Beziehung mit der Entität Kategorie hat, was bedeutet, dass ein Buch mehreren Kategorien angehören kann und eine Kategorie mehrere Bücher enthalten kann. Die Entität Kunde hat eine ein-zu-viele-Beziehung mit der Entität Bestellung, was bedeutet, dass ein Kunde mehrere Bestellungen aufgeben kann, aber jede Bestellung nur einem Kunden zugeordnet ist. Schließlich hat die Entität Bestellung eine viele-zu-viele-Beziehung mit der Entität Buch, was bedeutet, dass eine Bestellung mehrere Bücher enthalten kann und ein Buch in mehreren Bestellungen erscheinen kann.

Generieren Sie den Datenbank-Schema-SQL-Code mit Visual Paradigm

Tabelle buch {
ID int [pk, inkrement]
Titel varchar
Autor varchar
ISBN varchar
Preis float
}

Tabelle Kategorie {
ID int [pk, inkrement]
Name varchar
Beschreibung varchar
}

Tabelle Kunde {
ID int [pk, inkrement]
Name varchar
Adresse varchar
E-Mail varchar
}

Tabelle Bestellung {
ID int [pk, inkrement]
Bestelldatum datetime
Gesamtpreis float
Kunden-ID int [verweis: > Kunde.ID]
}

Tabelle BuchKategorie {
Buch-ID int [verweis: > Buch.ID]
Kategorie-ID int [verweis: > Kategorie.ID]
}

Tabelle BestellungBuch {
Bestellungs-ID int [verweis: > Bestellung.ID]
Buch-ID int [verweis: > Buch.ID]
}

Fazit

Die Datenmodellierung mithilfe von ERDs ist ein wichtiger Prozess, der uns hilft, die Beziehungen zwischen Entitäten in einer Datenbank visuell darzustellen und zu verstehen. Durch die Identifizierung von Entitäten, Attributen und Beziehungen können wir ein ERD erstellen, das die Daten und ihre Struktur auf klare und präzise Weise darstellt. Dies ermöglicht uns, effiziente und effektive Datenbanken zu entwerfen und zu pflegen, die die Bedürfnisse der Organisation unterstützen können.

Schreibe einen Kommentar