Formaler Datenbankentwurf - Informatixx
Formaler Datenbankentwurf - Informatixx
Formaler Datenbankentwurf - Informatixx
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
c Professor Dr. Georg Lausen, 2001: Vorlesung Datenbanken Einführung: Relationale Datenmodell 13<br />
Sei<br />
ein Relationsbezeichner.<br />
Ein (Relations)-Schema zu<br />
Relation (fortgesetzt)<br />
hat die Form<br />
ist hier eine endliche Attributmenge, das Format des Schemas.<br />
Anstatt<br />
schreiben wir auch<br />
Ordnung der Attribute eines Formates ist unter Umständen von Bedeutung.<br />
¨<br />
¡ ¢ �<br />
¤<br />
¡ ¥<br />
¥<br />
¥<br />
¡ ¢<br />
§<br />
¢<br />
�<br />
ist die Stelligkeit des Relationsbezeichners.<br />
Zu den Attributen kann auch der Domain angegeben werden.<br />
¢ �<br />
¤<br />
dom�¢<br />
�¡<br />
¤<br />
¥ ¥<br />
¥<br />
¢ ¡<br />
§<br />
. �<br />
�<br />
¢ �<br />
¤<br />
¥ ¥<br />
dom�¢<br />
¡ ¥<br />
§<br />
�<br />
¡ ¢<br />
�<br />
§<br />
� ; die so implizierte<br />
c Professor Dr. Georg Lausen, 2001: Vorlesung Datenbanken Einführung: Relationale Datenmodell 15<br />
Nullwerte<br />
Tupel sind bisher totale Funktionen. Existiert zu einem Attribut bzgl. eines Tupels<br />
kein Wert, so kann ein Nullwert null verwendet werden.<br />
Problematisch ist die Semantik eines Nullwertes: “Wert existiert, jedoch zur Zeit<br />
unbekannt” vs. “Wert existiert erst in der Zukunft” vs. “Wert prinzipiell unbekannt”<br />
vs. “Attribut nicht anwendbar” usw.<br />
Beispiel:<br />
¦<br />
��<br />
�<br />
��<br />
��<br />
��<br />
��<br />
�<br />
©� ¨<br />
��<br />
�<br />
�<br />
¤<br />
¤<br />
¤<br />
¦<br />
� ¨�<br />
¨��<br />
�<br />
¨��<br />
� ��<br />
�<br />
�<br />
¨�<br />
�<br />
�©�<br />
�<br />
��<br />
¨<br />
©<br />
¤<br />
�<br />
¤ �<br />
�<br />
¤ �<br />
� ¤<br />
¤<br />
���<br />
��<br />
� ¨���<br />
���<br />
��<br />
��<br />
�©�<br />
�<br />
�<br />
�<br />
��<br />
�<br />
¤<br />
�¨<br />
���<br />
¤ �<br />
�<br />
�<br />
�<br />
���<br />
���<br />
�©<br />
�<br />
��<br />
c Professor Dr. Georg Lausen, 2001: Vorlesung Datenbanken Einführung: Relationale Datenmodell 14<br />
Datenbank<br />
Ein (relationales) Datenbank-Schema<br />
Menge von (Relations-) Schemata,<br />
bzw.<br />
¡<br />
¡<br />
¡ ¥<br />
¤<br />
¥<br />
¥<br />
¡<br />
¡<br />
¢<br />
.<br />
¡<br />
¡<br />
¤<br />
�<br />
¤<br />
�<br />
¥ ¡<br />
¥<br />
¥<br />
¡<br />
ist gegeben durch eine (endliche)<br />
Eine Instanz zu einem relationalen Datenbankschema<br />
¢<br />
ist eine Menge von Relationen ¢<br />
, wobei Instanz zu<br />
¥<br />
.<br />
¢<br />
�<br />
¤<br />
¥<br />
¤<br />
¦<br />
betrachten wir bei Bedarf auch als Abbildung:<br />
¢<br />
�<br />
£<br />
�<br />
¡<br />
c Professor Dr. Georg Lausen, 2001: Vorlesung Datenbanken Anfragesprachen: Algebra 1<br />
Grundlagen von Anfragesprachen:<br />
Relationenalgebra<br />
Was wollen wir können?<br />
¯ Attribute aus Relationen herausstreichen: Projektion.<br />
¯ Tupel aus Relationen auswählen: Selektion.<br />
¯ Unterschiedliche Relationen miteinander verknüpfen: Verbund.<br />
¯ Relationen wie Mengen verarbeiten: Vereinigung, Differenz.<br />
¡<br />
¥<br />
£<br />
¡<br />
¡<br />
¥<br />
�<br />
¤<br />
¡ ¥<br />
¤<br />
¥<br />
¥<br />
¥<br />
¡<br />
¤<br />
¡<br />
¥<br />
�<br />
¡<br />
¦<br />
¥<br />
¢<br />
¡<br />
¢<br />
�<br />
¡<br />
£<br />
¡<br />
¡<br />
¡ ¥<br />
¤<br />
¥<br />
¥<br />
¡<br />
£<br />
¡<br />
für<br />
¢