Anselm

Aus ProgrammingWiki

Wechseln zu: Navigation, Suche

Thema OK --> Viel Erfolg


Inhaltsverzeichnis

Begründung

Ich habe das Beispiel eines Hotels verwendet, da es dort eine Menge von Informationen gibt und das Beispiel einsichtig genug ist. Diese müssen viele Daten verwalten. Um den Überblick zu behalten, empfiehlt sich eine Datenbank. Somit lässt sich ein Reinigungsplan, ein Belegungsplan usw. zur besseren Koordinierung aufstellen. Dadurch wird es möglich, genau notwendige Informationen aus einer Menge herauszusuchen. Redundanzen werden verhindert, der Zeitaufwand minimiert und Fehlerwahrscheinlichkeiten verkleinert. Somit kann das Hotel schneller reagieren.


Erklärung

Wichtige Merkmale von Modellen (Kardinalitäten, Normalform, …) erklärt:

Entität

Eine Entität (Entity) ist ein konkretes, eindeutig identifizierbares,Datenobjekt. Eine Entität kann also eine Person (Individuum), ein reales Objekt, ein abstraktes Objekt, ein Ereignis usw. sein. In einer Entitymenge werden Entitäten mit gleichen Eigenschaften zusammengefasst. Entitymengen werden durch Substantive angegeben.

Attribut (Eigenschaft)

Attribute beschreiben die Eigenschaften einer Entitymenge. Den konkreten zugeordneten Wert einer Entität zu einem Attribut nennt man Attributwert.


Relationship (Beziehung)

Eine Beziehung zwischen zwei Entitymengen und somit zwischen den konkreten Entitäten heißt Relationship. Relationships werden durch Verben angegeben. Eigenschaften von Relationships nennt man ebenfalls Attribute.

Kardinalitäten

1:1-Kardinalität: Jeder Entität der Entitymenge A wird genau eine Entität der Entitymenge B zugeordnet und umgekehrt.

1:n-Kardinalität: Jeder Entität der Entitymenge A können mehrere Entitäten der Entitymenge B zugeordnet werden, umgekehrt kann jedoch jeder Entität der Entitymenge B nur eine Entität der Entitymenge A zugeordnet werden.

n:m-Kardinalität: Jeder Entität der Entitymenge A können mehrere Entitäten der Entitymenge B zugeordnet werden und umgekehrt.

Schlüssel

Ein Schlüssel setzt sich aus einer (minimalen) Menge von Attributen einer Entität zusammen und dient zu ihrer eindeutigen Identifikation.

Primärschlüssel: Das Relationenmodell fordert, dass jede Tabelle ein Attribut (oder eine Attributkombination) enthält, über das jeder Datensatz eindeutig identifiziert werden kann.

Normalformen

1. Normalform: alles atomatisieren (jede Information in eine Spalte bringen)

2. Normalform: eindeutige Zuordnungen durch die Primärschlüssel

3. Normalform: kein Feld darf von einem Nicht-Schlüssel-Feld abhängig sein, Abhängigkeit nur von einem Schlüsselfeld


Transformationsregeln

Regel 1: Jede Entitymenge, die im ER-Modell enthalten ist, wird im relationalen Modell zu einer eigenständigen Tabelle. - Tabellenname (Primärschlüssel, Attribut_1,…,Attribut_n)

Regel 2: Zwei Entitymengen der Kardinalität 1:1 werden zu einer Tabelle zusammengefasst.

Regel 3: Wenn zwei Entitymengen durch einen Beziehungstyp der Kardinalität 1:n charakterisiert sind, wird der Primärschlüssel der ersten Entitymenge (1:n) als Fremdschlüssel der zweiten Entitymenge (1:n) eingefügt. - Tabellenname (Primärschlüssel, Attribut_1,…,Attribut_n, Fremdschlüssel)

Regel 4: Wenn zwei Entitymengen durch einen Beziehungstyp der Kardinalität n:m charakterisiert sind, entsteht eine neue Tabelle. Diese Tabelle enthält beide Primärschlüssel der jeweiligen Entitymengen als Fremdschlüssel. Falls die Beziehung durch weitere Attribute charakterisiert ist, werden diese mit in die Tabellen aufgenommen. - Tabellenname (Primärschlüssel, Attribut_1,…,Attribut_n, Fremdschlüssel_1, Fremdschlüssel_2)


ERM

Miniatur Miniatur

Relationenmodell

Variante 1

Miniatur

Variante 2

Fett: Primärschlüssel

Kursiv: Fremdschlüssel

Hotel „Anselm“[Hotelnummer, Straße, Ort]

Luxuszimmer[Zimmernummer, Größe, Kundennummer, Hotelnummer]

Mitarbeiter[Mitarbeiternummer, Name, Ort, Straße]

Kunden[Kundennummer, Ort, Name, Straße]

VerbindungML[Mitarbeiternummer, Zimmernummer]


Erstellung der Datenbank


SQL-Abfragen

Zeige, alle Informationen über das Hotel!

Welche Zimmer mit welcher Größe hat die Kundennummer 10 gebucht?

Auf welchen Straßen leben welche Kunden der Stadt Bautzen?

Gib die Mitarbeiternummer der Mitarbeiter, die ein großes Zimmer (40) reinigen, an!

Welcher Mitarbeiter haben die gebuchten Zimmer des Herrn Hackenbergs gereinigt?

Für eigene Abfragen:

Persönliche Werkzeuge