Databases Reference
In-Depth Information
6
Datensichten in SQL
Eine Datensicht ist eine »virtuelle Tabelle«. Wie in einem »Ausschnitt-Fenster«
können wir darin Informationen aus einer oder mehreren Tabellen sehen und bear-
beiten. »Virtuell« bedeutet hier, dass die Datensicht nicht physikalisch als Tabelle,
sondern nur für den Benutzer existiert. Die Tupel, die darin erscheinen, sind aus
Basistabellen abgeleitet. Diese Ableitung geschieht mithilfe einer geeigneten
Abfrage-Anweisung, die SQL jedes Mal ausführt, wenn eine Datensicht benutzt
wird. Veränderungen in den Werten der Basistabellen spiegeln sich also in den
Datensichten unmittelbar wider. Auf diese Weise lassen sich die Informationen so
zusammenstellen, wie der Anwender sie für seine Arbeitsaufgabe braucht. Ver-
schiedene Benutzer können vollständig unterschiedliche Sichtweisen auf diesel-
ben Daten haben und gleichzeitig damit arbeiten. Eine Datensicht wird in SQL als
View bezeichnet.
Der Datenbestand der Basistabelle kann in einer Datensicht nicht nur passiv
genutzt werden. Es ist ebenso möglich, über eine Datensicht unmittelbar die Werte
in der Basistabelle zu verändern.
Datensichten gehören dem externen Schema des Datenbankkonzepts an. Sie sind
Objekte der Datenbank. Insofern sind Datensichtdefinitionen Bestandteil der
Datendefinitionssprache (DDL) auf »höherer« Ebene. Sie sorgen für ein großes
Stück logischer Datenunabhängigkeit. Der Benutzer braucht die logische Struktur
der Datenbank nicht zu kennen, um sinnvolle Datenmanipulationen daran vorzu-
nehmen.
Das betrifft insbesondere die genaue Kenntnis der Primär- und Fremdschlüsselre-
lationen, mit deren Hilfe die Informationen redundanzfrei auf die verschiedenen
Tabellen aufgeteilt worden sind. Zusammengehörige Daten, wie der Name und
die Anschrift des Kunden, der einen bestimmten Auftrag erteilt hat, lassen sich in
Datensichten wieder zusammenführen, so dass es nur für den Benutzer so aus-
sieht, als seien sie zusammen gespeichert.
Auch Resultate von Berechnungen werden aus Gründen des logischen Datenbank-
entwurfs nicht in die Basisrelationen aufgenommen. Die Tupel einer Basistabelle
enthalten im Allgemeinen weder Rechenergebnisse, die aus den anderen Attribut-
werten desselben Tupels ermittelt werden können (wie zum Beispiel durch Multi-
plikation zweier Spalten), noch kumulative Resultate, die mithilfe von Aggregat-
funktionen aus einer Tabelle mit Detailinformationen abgeleitet werden können.
Auch diese Form der redundanten Information in einer Datensicht kann vom
Benutzer weiterverwendet werden, so dass sie zum Ausgangspunkt weiterer
Abfragen und Datensichten gemacht werden kann.
 
Search WWH ::




Custom Search