| Home - SQL Befehle - Datenmanipulation - Objekt erzeugen | www.sqldocu.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| zurück | vor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Virtuelle Tabellen werden mit CREATE VIEW erzeugt. Mit Hilfe dieses Befehls
kann aus einer oder mehreren Tabellen
(siehe
Datenbank Aufbau)
eine virtuelle Tabelle (VIEW) erzeugt werden. Es wird
vom
RDBMS
eine temporäre Tabelle angelegt.
Diese besteht wie eine "normale" Tabelle aus Spalten und Reihen.
Wenn auf diese virtuelle Tabelle wiederholt zugegriffen wird,
gelingt es manchmal die Performance zu erhöhen.
Der SELECT Befehl kann auf einen VIEW wie auf eine "normale" Tabelle angewendet werden.
VIEWS sind z.B. sinnvoll wenn zusammenhängende Daten auf mehrere
Tabellen verteilt sind. Mit Hilfe des Views können diese Daten übersichtlich
für Benutzer zusammengefasst werden.
Wenn ein Teil der Benutzer nicht über die nötigen Rechte verfügt, um auf Tabellen
zuzugreifen, kann dies mit virtuellen Tabellen umgangen werden.
Rechte werden für eine virtuelle Tabelle ähnlich vergeben, wie für eine
herkömmliche Tabelle (siehe
Datenbank Administration).
Die Befehle INSERT UPDATE DELETE können nur eingeschränkt auf virtuelle Tabellen
angewendet werden.
Hinweis: VIEWS werden von MySQL nicht unterstützt (ab Version 5 ist die Implementierung geplant)
Hinweis:
Der Syntax entsprechen dem ANSI Standard. Es sind nicht alle Optionen
angeführt, da sie nur von wenigen RDBMS unterstützt werden. MySQL unterstützt
VIEWS nicht (ab Version 5 plant MySQL VIEWS zu implementieren). Beispiele:
CREATE VIEW meinView (Spalte1 , Spalte2) AS SELECT Spalte7, Spalte4 FROM meineTabelle
Diese Tabellen werden verwendet um SQL besser darstellen zu können.
TabelleName: captain Die Tabelle captain besteht aus 2 Spalten und 5 Reihen Spalte1 hat den Namen name. Spalte2 hat den Namen nr_schiff
TabelleName: raumschiff Die Tabelle raumschiff besteht aus 3 Spalten und 5 Reihen Spalte1 hat den Namen nr_schiff. Spalte2 hat den Namen name Spalte3 hat den Namen status status=0 —> Raumschiff einsatzbereit status=1 —> Raumschiff in Reparatur
TabelleName: baujahr Die Tabelle baujahr besteht aus 2 Spalten und 5 Reihen Spalte1 hat den Namen nr_schiff. Spalte2 hat den Namen jahr
CREATE VIEW meinView ( captain, raumschiff, baujahr ) AS SELECT T1.name, T2.name, T3.jahr FROM captain T1 INNER JOIN raumschiff T2 ON T1.nr_schiff = T2.nr_schiff INNER JOIN baujahr T3 ON T3.nr_schiff = T2.nr_schiff
Es wird eine VIEW (virtuelle Tabelle) mit dem Namen meinView erzeugt. Als SELECT
ANWEISUNG wird ein
JOIN
verwendet. Unten zeigen wir die erzeugte virtuelle Tabelle.
virtuelle Tabelle bzw. View meinView:
PHP Syntax PERL Syntax
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||