Zum Inhalt springen
uencoder

View

Eine View ist eine gespeicherte Abfragedefinition (eine virtuelle Tabelle) ohne Daten, die zur Abfragezeit dynamisch berechnet wird; sie dient der Vereinfachung, Sicherheitstrennung und Abstraktion.

Zweck

Abstraktion von Abfragen und sicherheitliche Datenisolierung bieten und die Wiederverwendung komplexer Abfragen vereinfachen.

Mechanismus

CREATE VIEW name AS SELECT... Die View speichert die Abfragedefinition, keine Daten, und wird zur Abfragezeit als Unterabfrage expandiert. Der Zugriff auf Spalten/Zeilen lässt sich einschränken (Sicherheit). Materialized Views speichern Ergebnisse physisch und aktualisieren sich periodisch, geeignet für schwere Berechnungen.

Anwendungsfälle

  • Komplexe Abfragen kapseln und wiederverwenden
  • Berechtigungsisolierung auf Spalten-/Zeilenebene
  • Datenabstraktion und -kompatibilität
  • Vorabberechnung von Berichten (Materialized Views)

Beispiele

  • Eingabe
    CREATE VIEW active_users AS SELECT * WHERE active
    Output
    Virtual table

    Computed dynamically

Häufige Fehler

Deeply nested complex views perform poorly
Use materialized views or optimize the underlying query

Verwandte Begriffe

References