SQLite Ansichten

Eine Ansicht ist nichts weiter als eine in der Datenbank gespeicherte SQLite-Anweisung mit einem zugeordneten Namen. Eine Ansicht ist tatsächlich eine Kombination von Tabellen in Form einer vordefinierten SQLite-Abfrage.

Eine Ansicht kann alle Zeilen einer Tabelle oder ausgewählte Zeilen aus einer oder mehreren Tabellen enthalten. Eine Ansicht kann aus einer oder mehreren Tabellen erstellt werden, abhängig von der zum Erstellen der Ansicht verwendeten SQLite-Abfrage.

Eine Ansicht ist eine virtuelle Tabelle, mit der Benutzer Folgendes erreichen können:

  • Benutzer oder Benutzergruppen können strukturierte Daten auf eine natürlichere oder intuitivere Weise finden.

  • Den Datenzugriff einschränken, sodass Benutzer nur begrenzte Daten statt der vollständigen Tabelle sehen können.

  • Daten aus verschiedenen Tabellen zusammenfassen, um Berichte zu erstellen.

SQLite-Ansichten sind schreibgeschützt, daher können Sie möglicherweise keine DELETE-, INSERT- oder UPDATE-Anweisungen für eine Ansicht ausführen. Sie können jedoch einen Trigger für eine Ansicht erstellen, der ausgelöst wird, wenn ein Versuch unternommen wird, DELETE, INSERT oder UPDATE auf der Ansicht auszuführen, und die auszuführenden Aktionen werden im Triggerkörper definiert.

Ansicht erstellen

SQLite-Ansichten werden mit derCREATE VIEW-Anweisung erstellt. SQLite-Ansichten können aus einer einzelnen Tabelle, mehreren Tabellen oder anderen Ansichten erstellt werden.

Die grundlegende Syntax von CREATE VIEW lautet wie folgt:

CREATE [TEMP | TEMPORARY] VIEW view_name AS
SELECT column1, column2.....
FROM table_name
WHERE [condition];

Sie können mehrere Tabellen in die SELECT-Anweisung aufnehmen, und zwar auf eine Weise, die einer normalen SQL-SELECT-Abfrage sehr ähnlich ist. Wenn das optionale Schlüsselwort TEMP oder TEMPORARY verwendet wird, wird die Ansicht in einer temporären Datenbank erstellt.

Beispiele

Angenommen, die Tabelle COMPANY hat die folgenden Datensätze:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Hier ist nun ein Beispiel für das Erstellen einer View aus der Tabelle COMPANY. Die View wählt nur einige Spalten aus der Tabelle COMPANY aus:

sqlite> CREATE VIEW COMPANY_VIEW AS
SELECT ID, NAME, AGE
FROM  COMPANY;

Jetzt können Sie COMPANY_VIEW auf ähnliche Weise abfragen wie eine tatsächliche Tabelle. Unten finden Sie ein Beispiel:

sqlite> SELECT * FROM COMPANY_VIEW;

Dies erzeugt das folgende Ergebnis:

ID          NAME        AGE
----------  ----------  ----------
1           Paul        32
2           Allen       25
3           Teddy       23
4           Mark        25
5           David       27
6           Kim         22
7           James       24

View löschen

Um eine View zu löschen, verwenden Sie einfach dieview_nameDROP VIEW-Anweisung. Die grundlegende Syntax von DROP VIEW lautet wie folgt:

sqlite> DROP VIEW view_name;

Der folgende Befehl löscht die View COMPANY_VIEW, die wir zuvor erstellt haben:

sqlite> DROP VIEW COMPANY_VIEW;
Andere Erweiterungen