Sichten-Vorteile

Die Verwendung von Sichten birgt einige Vorteile, und aber auch einige Nachteile.

Wiederverwendbarkeit:

Quasi als benannte Anfrage wird der SELECT-Ausdruck der Sicht persistent im Data-Dictionary gespeichert und kann ganz beliebig wie Tabellen auch in Anfragen (SELECT), bei Datenänderungen (DML) oder in anderen Sichtdefinitionen anstelle von Tabellennamen verwendet werden. Somit kann sich die Programmierung von Anfragen oder von WHERE-Bedingungen von Änderungsanweisungen durch die Verwendung von Sichten mit ihren vordefininierten SELECT-Ausdrücken deutlich vereinfachen. Werden z.B. häufig angewandte Teilanfragen als Sicht realisiert, kann damit eine wesentliche Vereinfachung von Anfragen für den Benutzer der Datenbank erreicht werden.

Logische Datenunabhängigkeit:

Sichten ermöglichen es, eine Zwischenebene einzurichten, die von der eigentlichen Schema-Implementierung abstrahieren (relational, objektrelational, normalisiert, aggregiert, ...) und so eine auf die Anwendung/Benutzergruppe bezogene Darstellung realisieren können. Zum Beispiel durch das Umbenennen von Spalten können die Objekte/Daten individuell für bestimmte Benutzergruppen aufbereitet und präsentiert werden, indem deren vertrautes Vokabular verwendet werden kann. Durch die logische Datenunabhängigkeit bleibt die Schnittstelle für Anwendungen gegenüber Änderungen der Datenbankstruktur stabil. Gleiches gilt in umgekehrter Richtung.

Zugriffskontrolle:

Zusammen mit der Rechteverwaltung (z.B. über GRANT) kann sehr dezidiert gesteuert werden, auf welche Objekte/Daten ein Benutzer bzw. eine Benutzergruppe Zugriff hat und welcher Art dieser Zugriff ist: lesend, einfügend, ändernd, löschend.

Zusammenfassung von Benutzerklassen:

Sichten bieten die Möglichkeit der Strukturierung der Datenbankbeschreibung, die auf Benutzerklassen zugeschnitten werden, so dass nicht für jeden Benutzer eine eigene Sicht generiert werden muss.

Quellen:

  • ANSI/ISO/IEC 9075-1:2003. Part 1 "SQL/Framework", ISO International Organization for Standardization / ANSI American National Standards Institute, September 2003
  • ANSI/ISO/IEC 9075-2:2003. Part 2 "SQL/Foundation", ISO International Organization for Standardization / ANSI American National Standards Institute, Dezember 2003
  • Elmasri, Ramez/Navathe, Shamkant B.: "Grundlagen von Datenbanksystemen" , Pearson Studium, München, 2002, ISBN 3-8273-7021-3
  • Faeskorn-Woyke, Heide/Bertelsmeier, Birgit/Riemer, Petra/Bauer, Elena: "Datenbanksysteme - Theorie und Praxis mit SQL2003, Oracle und MySQL", Pearson Education, München, 2007, ISBN 978-3-8273-7266-6
  • Kemper, Alfons/Eickler, André: "Datenbanksysteme", Oldenbourg, München, 2009, 978-3-486-59018-0
  • Melton, Jim/Simon, Alan R.: "SQL: 1999 - Understanding Relational Language Components", Morgan Kaufmann, San Francisco, 2001, ISBN 1558604561
  • Oracle® Database SQL Language Reference 11g Release 2 (11.2), E17118-03, August 2010, http://download.oracle.com/docs/cd/E11882_01/server.112/e17118.pdf
  • Saake, Gunter/Sattler, Kai-Uwe/Heuer, Andreas: "Datenbanken - Konzepte und Sprachen", mitp-Verlag, Redline GmbH, Heidelberg, 2007, ISBN 3-8266-1664-2
  • Vossen, Gottfried: "Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme", Oldenbourg, München, 2008, ISBN 978-3-486-27574-2

Kagegorien: SQL, S