Kleines Nachschlagewerk Informatik
Vom Modell zur Datenbank
Worum geht es?
Analog zur Programmierung muss nun die Planung auch umgesetzt werden. In diesem Falle heißt das, dass Tabellen erstellt und gefüllt werden müssen.

Als Beispiel seien Schüler gegeben, die AGs besuchen.

(Bei diesem Beispiel hätte man für die AG durchaus eine Nummer verwenden können, um Schreibfehler bei der späteren Verwendung des Schlüssels zu vermeiden.)
Übertragung von Objekten
Objekte bilden Tabellen. Ihre Attribute sind die Spalten, jede Entität bildet eine Zeile. Die Schlüssel wurden bereits festgelegt.

Es entstehen also zwei Tabellen mit vier und zwei Spalten.
IDVornameNachnameKlasse
1MaxMüller7k2
............


ThemaTermin
UFO-BeobachtungMittwoch
......
Übertragung von Beziehungen
Auch Beziehungen werden Tabellen. Dabei werden in die Tabelle die Primärschlüssel der beteiligten Objekte und die Attribute der Beziehung aufgenommen.

Für das konkrete Beispiel ergibt sich eine Tabelle mit der ID, dem Thema und dem Beginn der AG für diesen Schüler.
IDThemaseit
1UFO-BeobachtungSeptember 2011
.........


Was aber soll der Schlüssel sein, wenn man Datensätze eindeutig identifizieren möchte? In diesem Fall muss der Schlüssel aus Schüler-ID und AG-Thema bestehen, weil ein Schüler verschiedene AGs besuchen kann und natürlich in den AGs auch mehrere Schüler sind. Handelt es sich um 1:1 oder 1:n Beziehungen, reicht ein Schlüssel.

KomplexitätSchlüsselwahl
1:1ein beliebiger Primärschlüssel
1:nder Primärschlüssel auf n-Seite
n:mbeide Primärschlüssel
Nacharbeit
Die entstandenen Tabellen lassen sich evtl. noch zusammen fassen. Dies ist bei 1:1 bzw. 1:n-Beziehungen möglich.
Nacharbeit 1:n
Bei einer 1:n-Beziehung (z.B. Angestellter und Abteilungsleiter mit der Beziehung "ist Chef von") hat jeder Angestellte genau einen Chef. Der Abteilungsleiter hat sicher auch eine Nummer als Primärattribut.

Angestellter( Ang-ID , Nachname, Vorname , ...)

Abteilungsleiter( Abt-ID , Nachname, Vorname , ...)

IstChef( Ang-ID , Abt-ID)

In der Beziehung stehen dann die beiden IDs. Somit kann man die ID des Abteilungsleiters auch gleich beim Angestellten eintragen und sich damit eine Tabelle sparen.

Angestellter( Ang-ID , Nachname, Vorname , Abt-ID)
Nacharbeit 1:1
Bei einer 1:1-Beziehung kann man noch weiter zusammen fassen. Ein Angestellter kann einen Parkplatz (genauer: einen Stellplatz auf einem der vielen Firmenparkplätze) auf dem Firmengelände besitzen. Normalerweise hätte man die Angestellten in einer Tabelle, die Parkplätze in einer anderen und dann eine Tabelle mit der Beziehungsrelation, die angibt, wer welchen Parkplatz nutzt.

Sind Teile optional, nutzt also nicht jeder Mitarbeiter einen Parkplatz, kann man auf zwei Tabellen reduzieren. Sind aber beide obligatorisch, hat also jeder Mitarbeiter genau einen Parkplatz, dann kann man die Parkplätze mit ihren Attributen (Parkplatz und Stellplatz) in die Mitarbeiterrelation aufnehmen und damit alles auf eine Relation reduzieren.

Mitarbeiter( Mitarbeiter-ID , Nachname, Vorname , ...)

Parkplatz( Parkplatz-Nummer , Parkplatz, Stellplatz)

Nutzt( Mitarbeiter-ID , Parkplatz-Nummer)

führt zu

Mitarbeiter( Mitarbeiter-ID , Nachname, Vorname , Parkplatz, Stellplatz)
Nacharbeit n:m
Oben beschriebene Verfahren sind hier leider nicht möglich.
Hinweis
Achtung, nicht jede mögliche Optimierung ist in Bezug auf zukünftige Erweiterbarkeit auch sinnvoll!