(andere Reihenfolge als im Syllabus, daher Nummern unsortiert)
1. Was ist eine Beziehung?
Eine Beziehung stellt die Verbindung zwischen zwei Tabellen dar.
In Base gibt es drei Arten von Beziehung:
1 : 1 Beziehung, d.h. ein Datensatz der ersten Tabelle ist genau einem Datensatz der zweiten Tabelle zugeordnet.
Bsp: 1. Tabelle Schülerdaten, 2. Deutschnoten
Jeder Schüler hat genau eine Deutschnote, da es keinen Schüler gibt, der nicht das Fach Deutsch hat.
1 : n Beziehung, d.h. ein Datensatz der ersten Tabelle kann einem, mehreren oder keinem Datensatz in der zweiten Tabelle zugeordnet sein.
Bsp: 1. Tabelle Schülerdaten, 2. ECDL-Prüfungen
Jedem Schüler ist eine eindeutige Nummer zugeordnet, allerdings haben nicht alle Schüler eine ECDL-Prüfung abgelegt, einige Schüler sind auch bei einer Prüfung durchgefallen, so dass sie die Prüfung mehrfach machen müssen.
n : m Beziehung, d.h. ein Datensatz der ersten Tabelle kann einem, mehreren oder keinem Datensatz in der zweiten Tabelle zugeordnet sein. Und: Ein Datensatz der zweiten Tabelle kann einem, mehreren oder keinem Datensatz in der ersten Tabelle zugeordnet sein. (Diese Beziehung kann nur über eine dritte Tabelle definiert werden.)
Bsp: 1. Tabelle ECDL-Prüfungen, 2. Tabelle Infoschüler, Verknüpfung über 3. Tabelle mit Schülerdaten
Nicht jeder Schüler, der eine ECDL-Prüfung abgelegt hat, ist automatisch Infoschüler. Umgekehrt hat nicht jeder Infoschüler automatisch eine Prüfung abgelegt.
2. Wozu dienen Beziehungen in einer Datenbank hauptsächlich?
Durch die Verknüpfung von Tabellen sollen die Tabellen so angelegt werden, wie sie sinnvoll sind. Wiederholung von Daten in Tabellen sollen dadurch minimiert werden.
3. Was ist die Integrität von Tabellen und warum ist es wichtig sie zu erhalten?
Bei der Integrität von Tabellen wird überprüft, ob eine Beziehung richtig gesetzt wird. Würde dies nicht gemacht, könnten leere Verknüpfungen entstehen, die zu Fehlern führen können.
Beispiel: Es kommt eine Schülernummer im ECDL vor, die nicht bei den Schülerdaten vorkommt.
Es wird überprüft:
ob nur solche Schlüssel verwendet werden, die in der Mastertabelle vorkommen
es dürfen nur solche Datensätze in der Mastertabelle gelöscht werden, die nicht
verknüpft worden sind
