Kapitel 3: Das Relationenmodell. Einführung Erstellung eines logischen Datenmodells Betrachtung von...
-
Upload
krimhilde-gildehaus -
Category
Documents
-
view
112 -
download
1
Transcript of Kapitel 3: Das Relationenmodell. Einführung Erstellung eines logischen Datenmodells Betrachtung von...
Kapitel 3: Das Relationenmodell
Einführung Erstellung eines logischen Datenmodells Betrachtung von objektorientierten oder relationalen
Datenmodellen Zurzeit am weitesten verbreitete Datenmodell:
Relationenmodell Zurzeit am weitesten verbreitete Datenbanksysteme
sind relationale Datenbanksysteme, z.B. Access Verwaltung in Tabellen, die in Beziehung zueinander stehen
Vokabeln Relationen: Tabellen mit Attributen in den
Spaltenköpfen und Tupeln in den Tabellenzeilen, und Verknüpfung von Tabellen
Master- und Detailtabellen: Bei einer 1:m Beziehung wird die 1-Seite „Mastertabelle“ und die m-Seite „Detailtabelle“ genannt
Fremdschlüssel: Der in der Mastertabelle definierte Primärschlüssel ist in der Detailtabelle der Fremdschlüssel
Kartesische Kreuzprodukt: Eine Relation R ist eine Teilmenge eines kartesischen Kreuzproduktes von Domänen
Kartesische Kreuzprodukt Betrachten wir zunächst eine Entität
„Kunde“ mit den Attributen Kundennummer D1={9711, 9713} und Kundenname D2={Meier, Blau}
Das kartesische Kreuzprodukt ist D1xD2 die Menge mit allen möglichen Kombinationen: {(9711,Meier), (9711,Blau), (9713,Meier), 9713,Blau)}
Sinnvoll betrachtet man nur eine Teilmenge, z.B. R1={(9711,Meier),(9713,Blau)} oder R2={(9711,Blau), (9713,Meier)}
Darstellung einer 1:m-Beziehung in einem Relationenmodell
MastertabelleDetailtabelle
Primärschlüssel Fremdschlüssel
Warum können noch keine Relationen unter den Tabellen hergestellt werden?
Darstellung einer 1:m-Beziehung in einem Relationenmodell
MastertabelleDetailtabelle
Primärschlüssel Fremdschlüssel
Die Prädikatsschreibweise
Die Prädikatsschreibweise lautet:
tblKunde(KNr, KName)
tblRechnungen(RNr, RDat, KNr) Bei der Prädikatsschreibweise wird der Primärschlüssel
unterstrichen und der Fremdschlüssel gestrichelt unterstrichen.
Darstellung einer m:m-Beziehung in einem Relationenmodell
Problem: Man kann nicht den Primärschlüssel einer Tabelle als Fremdschlüssel in eine andere Tabelle integrieren, da sonst immer mehrere Werte in einer Zelle stehen!
Transformation der netzförmigen Beziehung in zwei hierarchische Beziehungen
Eine m:m-Beziehung wird in zwei 1:m-Beziehungen transformiert, indem eine neue Tabelle eingeführt wird. In diese Tabelle werden die Primärschlüssel der beiden beteiligten Tabellen jeweils als Fremdschlüssel aufgenommen. Zusammen ergeben sie den Primärschlüssel der neuen Tabelle
Relationale Operationenergeben wieder Relationen
Selektion: Auswahl von Zeilen, die eine vorgegebene Bedingung erfüllen
Projektion: Auswahl vorgegebener Attribute Verbund (Join): Verknüpfung von Tabellen
Selektion in SQL SELECT * FROM Ausgangstabelle WHERE Bezeichnung LIKE „*rosa“
die Ergebnistabelle zeigt uns alle Bezeichnungen, die ... „rosa“ enthalten
Projektion in SQL SELECT Attribut1, Attribut2 FROM Ausgangstabelle
die Ergebnistabelle zeigt uns die Spalten mit den Attributen
Verbund (Join) in SQL SELECT DETAILTABELLE.Spalte1, MASTERTABELLE.Spalte2 FROM MASTERTABELLE INNER JOIN DETAILTABELLE
ON MASTERTABELLE.Primärschlüssel = DETAILTABELLE.Fremdschlüssel ;
MASTERTABELLE und DETAILTABELLE werden miteinander verbunden
Bsp.
SELECT tblRechnungen.Rdat, tblKunde.KnameFROM tblKundeINNER JOIN tblRechnungen ON tblKunde.KNr =
tblRechnungen.KNr ;
MastertabelleDetailtabelle
Primärschlüssel Fremdschlüssel