Sichten in PostgreSQL
Mit Ansichten können Sie die Abfrage-Reaktionszeiten verbessern, da sie die Anzahl der bei einer Datenabfrage durchsuchten Tabellen und Spalten reduzieren. Sie können Sichten erstellen, die von Client-Anwendungen als Feature-Classes oder nicht räumliche Tabellen erkannt werden. Eine Sicht kann auf eine einzelne Tabelle oder Feature-Class verweisen, Sie können aber auch Sichten erstellen, die Daten aus mehreren Tabellen zusammenführen.
Für Sichten in PostgreSQL werden Regeln verwendet. Die Definitionsabfrage für die Sicht wird dem Regelsystem übergeben, das nach Regeln sucht, die mit der Sicht verknüpft sind. Falls vorhanden, werden diese Regeln an die Sicht angehängt, und die gesamte Abfrage einschließlich der Regeln wird dann an den Planner übergeben, der einen Ausführungsplan erstellt und die Abfrage ausführt.
Jeder Benutzer, der über die erforderlichen Berechtigungen verfügt, kann eine Sicht über SQL oder den ArcSDE-Befehl "sdetable" erstellen. Informationen zu den für das Erstellen von Sichten erforderlichen Berechtigungen finden Sie in der PostgreSQL-Dokumentation für Ihre Version.
Sichtdefinitionen in PostgreSQL können durch Abfragen der Systemsicht "pg_views" aufgerufen werden.
Die Systemsicht "pg_views"
Wenn Sie in einer PostgreSQL-Datenbank Sichten erstellen, werden die Informationen zu den Sichten in PostgreSQL-Systemtabellen gespeichert. Fragen Sie anstelle der Systemtabellen die Systemsicht "pg_views" ab, um Definitionen anzuzeigen.
Feldname |
Datentyp |
Beschreibung |
---|---|---|
schemaname |
name |
Der Name des Schemas, in dem die Sicht gespeichert ist; verweist auf pg_namespace.nspname |
viewname |
name |
Der Name der Sicht; verweist auf pg_class.relname |
viewowner |
name |
Der Name des Sichtsbesitzers; verweist auf pg_authid.rolname |
Definition |
Text |
Die rekonstruierte SELECT-Abfrage, die die Sicht definiert |