Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Was ist eine Ansicht in Oracle?

Eine Ansicht in Oracle und in anderen Datenbanksystemen ist es einfach die Darstellung einer SQL-Anweisung, die im Speicher gespeichert wird, sodass sie leicht wiederverwendet werden kann. Zum Beispiel, wenn wir häufig die folgende Abfrage ausgeben

SELECT customerid, customername FROM customers WHERE countryid='US';

Verwenden Sie zum Erstellen einer Ansicht den Befehl CREATE VIEW wie in diesem Beispiel zu sehen

CREATE VIEW view_uscustomers
AS
SELECT customerid, customername FROM customers WHERE countryid='US';

Dieser Befehl erstellt eine neue Ansicht namens view_uscustomers. Beachten Sie, dass dieser Befehl nicht dazu führt, dass tatsächlich irgendetwas in der Datenbank gespeichert wird, mit Ausnahme eines Data-Dictionary-Eintrags, der diese Ansicht definiert. Das bedeutet, dass Oracle jedes Mal, wenn Sie diese Ansicht abfragen, die Ansicht ausführen und die Datenbankdaten abfragen muss. Wir können die Ansicht wie folgt abfragen:

SELECT * FROM view_uscustomers WHERE customerid BETWEEN 100 AND 200;

Und Oracle wandelt die Abfrage in Folgendes um:

SELECT * 
FROM (select customerid, customername from customers WHERE countryid='US') 
WHERE customerid BETWEEN 100 AND 200

Vorteile der Verwendung von Ansichten

  • Gemeinsamkeit des verwendeten Codes. Da eine Ansicht auf einem gemeinsamen SQL-Satz basiert, bedeutet dies, dass beim Aufrufen weniger wahrscheinlich eine Analyse erforderlich ist.
  • Sicherheit. Ansichten werden seit langem verwendet, um die Tabellen zu verbergen, die tatsächlich die Daten enthalten, die Sie abfragen. Außerdem können Ansichten verwendet werden, um die Spalten einzuschränken, auf die ein bestimmter Benutzer Zugriff hat.
  • Prädikat-Pushing

Fortgeschrittene Themen finden Sie in diesem Artikel zum Thema „Erstellen und Verwalten von Ansichten in Oracle.“