Arten von Ansichten in SQL | Ansichten in SQL [2022]

Veröffentlicht: 2021-01-02

Das Schreiben komplexer SQL-Abfragen und das Sichern des Datenbankzugriffs sind die Herausforderungen, vor denen Datenbankadministratoren und -benutzer immer stehen, und diese Abfragen können sehr kompliziert werden. Die Verwendung eines Proxys über der ursprünglichen Tabelle hilft bei der Vereinfachung solcher Abfragen. Außerdem gibt es Fälle, in denen der Administrator den direkten Zugriff auf die Datenbank einschränken möchte. Für diese beiden Umstände können Ansichten verwendet werden.

Inhaltsverzeichnis

Was ist eine Ansicht?

SQL verfügt über eine spezielle Version von Tabellen namens View, bei der es sich um eine virtuelle Tabelle handelt, die zur Laufzeit kompiliert wird. Eine Ansicht ist nur eine SQL-Anweisung, und die damit verbundenen Daten werden nicht physisch in der Ansicht gespeichert, sondern in den Basistabellen davon.

Erfahren Sie, wie Sie Anwendungen wie Swiggy, Quora, IMDB und mehr erstellen

Sie kann alle Zeilen und Spalten einer Tabelle enthalten oder nur einige ausgewählte Zeilen und Spalten, wenn der Zugriff eingeschränkt werden muss. Abhängig von der zum Erstellen der Ansicht verwendeten geschriebenen SQL-Abfrage kann sie aus einer oder mehreren Tabellen erstellt werden.

Ansichten können verwendet werden, um Daten so zu strukturieren, dass Benutzer sie natürlich finden, komplexe Abfragen vereinfachen, den Zugriff auf Daten einschränken und Daten aus mehreren Tabellen zusammenfassen, um Berichte zu erstellen.

Ansichten verwalten

Es gibt verschiedene Aspekte im Zusammenhang mit der Verwaltung von Ansichten, die hier definiert werden.

Ansicht erstellen: Ansichten können mit der Anweisung „Ansicht erstellen“ erstellt werden. Die Ansicht wird durch eine Abfrage definiert, die materialisierte Ansichten, Tabellen oder andere Ansichten referenziert.

Ansicht umbenennen: Ansichten können umbenannt werden, wobei darauf zu achten ist, dass alle Objekte, die auf den alten Namen der Ansicht verweisen, nun einen neuen Namen haben.

Auflisten von Ansichten: Alle Ansichten in der SQL Server-Datenbank können durch Abfragen der Systemkatalogansicht aufgelistet werden.

Ansicht entfernen: Mit der Anweisung „Drop View“ kann eine bestehende Ansicht entfernt werden.

Lesen Sie: SQL vs. PlSQL

Melden Sie sich für Online-Softwareentwicklungskurse von den besten Universitäten der Welt an. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.

Arten von Ansichten in SQL

Es gibt zwei Arten von Ansichten in SQL Server, nämlich systemdefinierte Ansichten und benutzerdefinierte Ansichten. Dieser Abschnitt enthält eine Beschreibung dieser beiden Typen.

Systemdefinierte Ansichten

Die systemdefinierten Ansichten sind vordefinierte Ansichten, die bereits in der SQL Server-Datenbank vorhanden sind, z. B. Tempdb, Master und temp. Jede der Datenbanken hat ihre eigenen Eigenschaften und Funktionen.

Die Vorlagendatenbank für alle benutzerdefinierten Ansichten stammt aus der Master-Datenbank. Es enthält viele vordefinierte Ansichten, die Vorlagen für Tabellen und andere Datenbanken sind. Es enthält fast 230 der vordefinierten Ansichten.

Systemdefinierte Ansichten werden automatisch an alle benutzerdefinierten Datenbanken angehängt. Und diese liefern Informationen über die Datenbank, Tabellen und alle Eigenschaften der Datenbank und Tabellen. Es gibt drei Arten von systemdefinierten Ansichten: Informationsschema, Katalogansicht und dynamische Verwaltungsansicht.

Informationsschema

Es gibt zwanzig verschiedene Schemaansichten im SQL-Server. Sie werden verwendet, um die physischen Informationen der Datenbank anzuzeigen, z. B. Tabellen, Einschränkungen, Spalten und Ansichten. Diese Ansicht beginnt mit INFORMATION_SCHEMA, gefolgt vom Namen der Ansicht. INFORMATION_SCHEMA.CHECK_CONSTRAINTS wird verwendet, um Informationen über alle in der Datenbank verfügbaren Einschränkungen zu erhalten.

Eine Einschränkung wird für eine bestimmte Spalte in einer Tabelle verwendet, um sicherzustellen, dass bestimmte Datenregeln für die Spalte befolgt werden. INFORMATION_SCHEMA.COLUMNS wird verwendet, um Informationen über die Tabellenspalten wie Tabellenname, Spaltenname, Position der Spalte, Standardwert usw. zu erhalten. Um die in der aktuellen Datenbank vorhandenen Ansichten zurückzugeben, wird INFORMATION_SCHEMA.VIEWS verwendet.

Katalogansicht

Diese werden verwendet, um Informationen zurückzugeben, die vom SQL-Server verwendet werden. Katalogansichten bieten eine effiziente Möglichkeit zum Abrufen, Präsentieren und Transformieren benutzerdefinierter Formen von Informationen. Sie enthalten jedoch keine Informationen über Sicherungs-, Replikations- oder Wartungspläne usw. Diese Ansichten werden verwendet, um auf Metadaten von Datenbanken zuzugreifen, und die Namen und Spaltennamen sind beschreibend und helfen einem Benutzer, abzufragen, was erwartet wird.

Dynamische Verwaltungsansicht

Diese wurden 2005 in SQL Server eingeführt. Der Administrator kann Informationen über den Serverstatus abrufen, um Probleme zu diagnostizieren, den Zustand der Serverinstanz zu überwachen und die Leistung über diese Ansichten zu optimieren. Die serverbezogene dynamische Verwaltungsansicht wird nur in der Master-Datenbank gespeichert, während die datenbankbezogene dynamische Verwaltungsansicht in jeder Datenbank gespeichert wird.

Benutzerdefinierte Ansichten

Dies sind die Arten von Ansichten, die von den Benutzern definiert werden. Unter den benutzerdefinierten Ansichten gibt es zwei Typen, die einfache Ansicht und die komplexe Ansicht.

Einfache Ansicht

Diese Sichten können nur eine einzige Basistabelle enthalten oder nur aus einer Tabelle erstellt werden. Gruppenfunktionen wie MAX(), COUNT() usw. können hier nicht verwendet werden und enthalten keine Datengruppen.

Durch die Verwendung von Simple View können DML-Operationen durchgeführt werden. Einfügen, Löschen und Aktualisieren sind direkt möglich, aber die einfache Ansicht enthält keine durch Ausdrücke definierten Gruppieren nach, Pseudospalten wie Rownum, Distinct, Spalten. Die einfache Ansicht enthält auch keine NOT NULL-Spalten aus den Basistabellen.

Komplexe Ansicht

Diese Sichten können mehr als eine Basistabelle enthalten oder können auf mehr als einer Basistabelle aufgebaut werden, und sie enthalten eine Group-by-Klausel, Join-Bedingungen und eine Order-by-Klausel. Hier können Gruppenfunktionen verwendet werden, und es enthält Gruppen von Daten. Komplexe Ansichten können nicht immer zum Ausführen von DML-Operationen verwendet werden.

Einfügen, Löschen und Aktualisieren können nicht direkt auf komplexe Ansichten angewendet werden. Aber im Gegensatz zu einfachen Ansichten können komplexe Ansichten group by, Pseudospalten wie rownum, verschiedene, durch Ausdrücke definierte Spalten enthalten. NOT NULL-Spalten können in komplexe Ansichten eingeschlossen werden, während sie von der einfachen Ansicht nicht ausgewählt werden.

Es gibt andere Ansichten, wie z. B. Inline-Ansicht und Materialisierte Ansicht. Die Inline-Ansicht basiert auf einer Unterabfrage in der FROM-Klausel, die Unterabfrage erstellt eine temporäre Tabelle, und dies vereinfacht die komplexe Abfrage.

Diese Ansichten werden verwendet, um komplexe SQL-Abfragen ohne Join- und Unterabfrageoperationen zu schreiben. Die materialisierte Ansicht speichert die Definition und sogar die Daten. Replikate von Daten werden erstellt, indem sie physisch gespeichert werden. Diese Ansicht reduziert die Bearbeitungszeit für die Neugenerierung der gesamten Daten.

Lesen Sie: Spannende Ideen und Themen für SQL-Projekte

Fazit

Dieser Artikel beschreibt die Arten von Ansichten in SQL . Eine View in SQL wird detailliert definiert und erklärt, und die verschiedenen Arten, wie Views verwaltet werden, werden ebenfalls definiert. Die verschiedenen Typen von Ansichten in SQL , wie z. B. systemdefinierte Ansichten und benutzerdefinierte Ansichten, werden im Detail zusammen mit den verschiedenen Untertypen unter jedem Typ beschrieben.

Wenn Sie mehr über Full-Stack-Softwareentwicklung erfahren möchten, schauen Sie sich das Executive PG-Programm in Full-Stack-Softwareentwicklung von upGrad & IIIT-B an, das für Berufstätige konzipiert ist und mehr als 500 Stunden strenge Schulungen, mehr als 9 Projekte, und Aufgaben, IIIT-B-Alumni-Status, praktische praktische Abschlussprojekte und Arbeitsunterstützung bei Top-Unternehmen.

Bereiten Sie sich auf eine Karriere der Zukunft vor

Bewerben Sie sich jetzt für den Master in Software Engineering