Datenbankmodellierung (Lernzielkontrolle zum relationalen Tabellenmodell) – Anwendungsentwickler-Podcast #49

Dieser Beitrag ist Teil 11 von 14 in der Serie Lernzielkontrollen.

Nachdem beim letzten Mal das Erstellen des Entity-Relationship-Modells Thema war, widmen wir uns in der neunundvierzigsten Episode des Anwendungsentwickler-Podcasts den Schritten bei der Erstellung eines Tabellenmodells.

Inhalt

Modellierung mit Tabellenmodellen

  • Welche Bestandteile hat ein Tabellenmodell?
    • Tabellen (Relationen) mit Name, Spalten, Datentypen; Beziehungen mit Kardinalitäten; Primär- und Fremdschlüssel werden gekennzeichnet (z.B. mit PK und FK).
  • Wie kommt man vom ER-Modell zum Tabellenmodell?
    • Jeder Entitätstyp wird zu einer Tabelle.
    • Attribute werden zu Spalten dieser Tabellen.
    • Datentypen der Spalten bestimmen.
    • m:n-Beziehungen durch Fremdschlüssel in Zwischentabellen auflösen. Ggfs. Attribute der Beziehung als Spalten ergänzen.
    • 1:n- und 1:1-Beziehungen durch Fremdschlüssel auflösen.
      • Bei 1:1 ist die Position des Fremdschlüssels egal, bei 1:n muss er in die n-Tabelle.
  • Tipps zur Prüfung und Praxis
    • Immer alle Informationen einzeichnen, auch wenn sie nicht explizit gefragt sind.
    • Drei Datentypen reichen: VARCHAR, NUMBER und DATE.
    • Wenn eine Tabelle einen zusammengesetzten Schlüssel mit mehr als 2 Attributen hat, führe einen anonymen Primärschlüssel ein.
    • Achte auf ein normalisiertes Modell in dritter Normalform (die weiteren Normalformen sind irrelevant).
    • Du solltest trotzdem erklären können, wann man von der Normalisierung abweichen kann/sollte.
    • Die 1:n-Beziehungen werden in der 3. Normalform aufgelöst, die m:n-Beziehungen in der 2.

Literaturempfehlungen

Links

Navigation der Serie<< Datenbankmodellierung (Lernzielkontrolle zum Entity-Relationship-Modell) – Anwendungsentwickler-Podcast #48Java EE 7 (Lernzielkontrolle) – Anwendungsentwickler-Podcast #54 >>

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax