Hauptmenü

Untermenü

Advanced MySQL - Zwischenspeicherung - Views - Weitere Möglichkeiten

1. Einen View löschen

Null problemo, einfach mit DROP und anstelle von TABLE ein VIEW nehmen.


DROP VIEW view_name;

2. Möglichen View überschreiben


CREATE OR REPLACE VIEW view_name ...

3. Änderungen am View vornehmen

UPDATE

Ist in praktisch allen Fällen möglich, so lange man die folgenden Dinge beachtet. Änderungen bei Feldern vom Typ PRIMARY KEY und UNIQUE KEY sind nicht möglich, wenn es schon einen Datensatz mit dem entsprechenden Wert gibt.

INSERT

Ist im Prinzip möglich, wenn die referentielle Integrität nicht verletzt wird.

DELETE

Ist im Prinzip möglich, wenn die referentielle Integrität nicht verletzt wird.

Wichtig!

Eigentlich sind Views dazu gedacht, Daten auszulesen, nicht sie zu ändern. Darum sollte man von solchen Dingen auch tunlichst die Finger lassen. Und wenn irgend möglich, die Relationen in den Tabellen über Fremdschlüssel darstellen. Dann kann man nicht viel kaputt machen.

4. Besonderheiten

ORDER BY/LIMIT

Diese Anweisung innerhalb eines Views wird ignoriert, wenn die Anfrage an den View ebenfalls ein ORDER BY enthält. Das gilt auch für LIMIT.

Veränderbarkeit

Wie ich oben schon sagte, kann man in einem View auch UPDATE-, INSERT- oder DELETE-Anweisungen ausführen. Allerdings dürfen dann in ihm keine der folgenden Anweisungen genutzt werden. Denn die sorgen dafür dass er nicht mehr geändert werden kann.

5. Views auf Views legen

Geht auch, aber man sollte es nicht übertreiben. Außerdem gibt es hier noch ein paar Feinheiten, die ich in einem kommenden Tutorial nachreichen werde.


CREATE VIEW uebersicht AS
 ...
 
CREATE VIEW detail AS 
  SELECT
    *
  FROM 
    uebersicht 
  WHERE dispo 1000;
  
SELECT vornamename FROM detail;

zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt