Premium Partner

HFWI8512 :: Datenstrukturen_Datenbanken

Lehrbuch Informations- und Datenbankmanagement, Dozent Christian Isler

Lehrbuch Informations- und Datenbankmanagement, Dozent Christian Isler


Kartei Details

Karten 20
Lernende 15
Sprache Deutsch
Kategorie Informatik
Stufe Andere
Erstellt / Aktualisiert 20.02.2017 / 15.11.2021
Lizenzierung Keine Angabe
Weblink
https://card2brain.ch/box/20170220_hfwi8512_datenstrukturendatenbanken
Einbinden
<iframe src="https://card2brain.ch/box/20170220_hfwi8512_datenstrukturendatenbanken/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Du verfügst über die nachfolgenden Tabellen. In einigen Tabellen wurden natürliche Schlüssel verwendet. 

Artikel (Artikel_ID, Artikelbezeichnung)

Preis (Preis_ID, Artikel ID, Datum_ab, Datum_bis, Preis)

Kunde (Nachname, Vorname, Geburtsdatum, Strasse, PLZ, Ort)

Bestellung (Bestell_ID, Nachname, Geburtsdatum, Bestelldatum)

Position (Bestell_ID, Artikel_ID, Menge)

______________________________________

Legende: Primärschlüssel /Fremdschlüssel

Wenn aufgrund dieser Tabelle ein Datenmodell (ERD) erstellt wird, wie viele m bzw. mc wären in diesem Modell enthalten? 

Was versteht man unter einem Primärschlüssel?

Bei einem Primärschlüssel handelt es sich um die Spalte (oder Spalten) einer Tabelle, mit der oder denen sich die Zeilen dieser Tabelle eindeutig identifizieren lassen.

KUNDEN

Kundennr.    Vorname      Nachname

1                   Sally            Thompson

2                   Sally           Henderson

3                  Harry           Henderson

4                  Sandra         Wellington

In dieser Tabelle ist beispielsweise „Kundennr.“ der Primärschlüssel.

Die Werte in den Spalten für Primärschlüssel müssen für jede Zeile eindeutig sein – Duplikate sind nicht zulässig. Außerdem dürfen sich in den Spalten für Primärschlüssel  keine Nullen befinden.

Was versteht man unter Fremdschlüssel?

Bei „Fremdschlüsseln“ handelt es sich um Spalten, die auf Spalten mit Primärschlüsseln verweisen. So ist beispielsweise „Auftragsnr.“ der Primärschlüssel für die Tabelle AUFTRÄGE unten. Bei „Kundennr.“ handelt es sich damit um einen Fremdschlüssel, der auf den Primärschlüssel in der Tabelle KUNDEN verweist.

 

Falls man es ganz genau nimmt, müssen Fremdschlüssel nicht unbedingt auf einen Primärschlüssel verweisen. Die einzig echte Anforderung für eine Spalte, auf die ein Fremdschlüssel verweist, ist: Sie muss eindeutige Werte enthalten. 

Welche Datenbankbeziehungstypen gibt es und was bedeuten diese?

1:n Beziehungen 

z.B. in einer Buchhandlung wird in der Datenbank verwaltet, dass ein Buch von einer Person ausgeliehen wird. Natürlich sind auch andere Beziehungen möglich. 

Jetzt wird es vorkommen, dass wir an eine Person mehr als ein Buch verleihen. Wir müssen also in unserer Tabelle eine 1:n Beziehung abbilden können.

Schon ist es bei den Tabellen und Datenbanken vorbei mit der Monogamie. Eine Person kann viele Bücher haben, aber jedes Buch kann sich gerade nur bei einer Person befinden – also 1 zu n.

_____________________

n:m Beziehungen

Komplexer wird es, wenn wir Beziehungen haben, die einen Mehrfachtatbestand erfüllen. Ich kann den Adressen nun z.B. besuchte Kurse (Unterrichtsfächer, Studienkurse, ...) zuordnen. Jede Person kann mehrere Kurse besuchen. Und jeder Kurs kann verschiedene Personen als Teilnehmer beinhalten. Das ergibt eine n:m Beziehung.

mathematisch gesehen:
1 Person kann 0,1 oder n Kurse besuchen
1 Kurs kann 0,1 oder m Teilnehmer haben

Was versteht man unter Normalisierung? 

Normalisierung – logische Regeln zur Minimierung von Redundanz

Durch die Normalisierung und die strengen Regeln soll eine korrekte, relationale Datenbank aufgebaut werden bzw. diese erhalten bleiben. Dabei ist wichtig, dass Redundanzen vermieden werden, da diese sonst schnell bei Änderungen von Inhalten zu Inkonsistenzen führen.

Dabei bedeutet Redundanz (lateinisch redundare „im Überfluss vorhanden sein“) auf Deutsch Doppelung bzw. Überschneidungen.

Inkonsistenzen bedeutet: Widersprüchlichkeit oder Unbeständigkeit der eingegebenen Daten.

Was versteht man unter der 1. Normalform? 

Erste Normalform (1 NF)

Jedes Datenfeld darf nur gleichartigen Inhalt enthalten (Beispiel: aus einem Datenfeld „Name“ entstehen zwei Datenfelder: eines für den Vornamen und eines für den Nachnamen). Dies wurde im Kapitel „Daten strukturieren – Vorüberlegungen zur Datenbankerstellung“ als Inhalte trennen (atomisieren) bezeichnet.

Beispiel:

Aus dem Feld „name“ mit dem Inhalt „Erika Schmidt“ werden die 2 Datenbankfelder „vorname“ und „nachname“. Das Feld „vorname“ bekommt als Inhalt „Erika“ und das Feld „nachname“ den Inhalt „Schmidt“.

Mit gleichartig ist hier gemeint, dass im Feld „vorname“ dann durchaus auch 2 Vornamen auftauchen: „Karl Heinz“. 

Für die Tabelle muss ein Primärschlüssel vorhanden sein, damit jeder Datensatz eindeutig angesprochen werden kann.

Was versteht man unter der 2. Normalform? 

Zweite Normalform (2 NF)

Die erste Normalform muss erfüllt sein! Erst wenn die erste Normalform erfüllt ist, kann man an die Anwendung der zweiten Normalform gehen.

Die 2. Normalform besagt: Jeder Datensatz bildet nur einen Sachverhalt ab. Liegen in einer Tabelle Daten vor, die nicht nur 1 Sachverhalt abbilden, werden diese Daten in einzelne thematische Tabellen unterteilt.

 

 

Was versteht man unter der 3. Normalform?

Dritte Normalform (3 NF)

Die erste und zweite Normalform muss erfüllt sein! Erst wenn die 1. und 2. Normalform erfüllt ist, kann man an die Anwendung der 3. Normalform gehen.

Bei der dritten Normalform geht es den indirekten (transitiven) Abhängigkeiten an den Kragen. In der Fachliteratur wird von transitiven Abhängigkeiten gesprochen.

Zum Beispiel haben wir in einer Tabelle neben Namen auch PLZ und Ort. Zu jedem Namen gehört eine PLZ und zu jeder PLZ gehört ein Ort. Der Ort ist also indirekt vom Namen abhängig.

Mathematisch ausgedrückt sieht das so aus:

„wenn NAME -> PLZ“ und „PLZ -> ORT“ dann „Name -> ORT“.

„Name -> ORT“ ist also eine transitive Abhängigkeit

Wir wollen aber in der Tabelle nur direkte Abhängigkeiten (also intransitive), weswegen das ganze auseinandergepflückt werden darf.