Database Reference
In-Depth Information
Von entscheidender Bedeutung ist die Erhaltung der Fremdschlüsselbeziehung, um dem
jeweiligen Supertyp-Datensatz den entsprechenden Subtyp-Datensatz korrekt zuordnen
zu können.
Im Kundenbereich muss als erstes die Tabelle „KUNDEN“ gefüllt werden, weil die so er-
zeugten Schlüssel für die Daten der Tabellen „FIRMEN“ und „PRIVAT“ benötigt werden.
Die Tabelle Firmenkontakt enthält wiederum einen Fremdschlüssel für die Verknüpfung
der Daten der Kontaktperson zu der entsprechenden Firma, so dass diese Tabelle zuletzt
gefüllt werden muss.
Die Beziehung zwischen Kunden und Fahrzeugen wird über die Anmietung eines Fahr-
zeuges realisiert: Hier werden nicht nur anmietungspeziische Daten, wie etwa der Miet-
zeitraum dokumentiert, sondern auch Kundendaten und Fahrzeugdaten mit dem jeweili-
gen Mietvorgang verknüpft. Dazu enthält die Tabelle „ANMIETUNG“ verschiedene Fremd-
schlüssel, über die das konkret gemietete Fahrzeug und der mietende Kunde miteinander
verknüpft werden. Das bedeutet, dass sowohl Kunden- als auch Fahrzeugdaten vorhanden
sein müssen, bevor die Anmietdaten integriert werden können.
Bevor mit der Integration begonnen werden kann, ist noch zu beachten, dass die Werte
der Schlüsselattribute der anzulegenden Datensätze nicht willkürlich gewählt werden kön-
nen, weil es so zu Problemen, wie im Abschnitt 2.6.2.3 erwähnt, kommen könnte. Die Ge-
fahr einer doppelten Verwendung einzelner Schlüsselwerte ist gegeben, da das Ziel bereits
Daten enthält. Doppelte Schlüsselwerte würden nicht nur eine Verletzung der Integritäts-
regeln darstellen, sondern auch die eindeutige Verknüpfung zusammengehörender Daten
verhindern.
So muss, z. B. bevor ein neuer Kunde dem System hinzugefügt werden kann, klar sein, ob
die vorhandene ID in der Kundentabelle schon vorhanden ist oder eine neue ID verge-
ben werden muss. Anstatt das für jeden einzelnen Datensatz zu überprüfen, wird häuig
mit sogenannten Lookup-Tabellen gearbeitet. Diese enthalten für einen jeden zu integrie-
renden Datensatz die ID des Quellsystems sowie die neue ID, unter der die Daten im Ziel
geführt werden sollen. Damit muss nur einmal die höchste bereits vorhandene ID ermittelt
werden. Alle folgenden IDs können dann durch einfache Erhöhung des vorherigen Wertes
erzeugt werden.
Da nun nicht nur klar ist, welche Daten integriert werden müssen, sondern auch in welcher
Reihenfolge dies geschehen muss, kann mit der Umsetzung der Integration begonnen wer-
den.
Kontrollfragen/Aufgaben:
1. Die gegebene Reihenfolge kann in (gewissen Grenzen) verändert werden. Welche
anderen Reihenfolgen sind möglich?
2. Unter der Annahme, dass die Preise der Quellen doch in das Ziel übernommen
werden sollen, müssen weitere Tabellen mit Daten gefüllt werden. Wie muss die
Integrationsreihenfolge dann verändert werden?