Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

SQL Grundkurs 1: Die Sprache erlernen

Ändern einer Sicht

Testen Sie unsere 2015 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Um eine Änderung an einer Sicht vorzunehmen, müssen Sie diese mit der neuen SELECT-Anweisung überschreiben. Nutzen Sie je nach Datenbanksystem dazu die Anweisung ALTER oder REPLACE. Lernen Sie außerdem die Unterschiede kennen, welche Nachteile das Löschen und Neuerstellen einer Sicht gegenüber dem Überschreiben hat.

Transkript

In diesem Video vermittle ich Ihnen, wie Sie eine einmal erzeugte View wieder ändern können. Wenn Sie eine View erzeugen mit der Anweisung "CreateView", dann wird diese erstmalig in der Datenbank erstellt. Wenn Sie dann anschließend drauf kommen, Sie haben eine Spalte vergessen, Sie möchten irgendwas ergänzen, ja? Wir können zwar schon noch mal drauf zugreifen, auf diese View und die Inhalte ausgeben, aber es fehlt uns z.B. hier die Spalte "Aktiv", die möchten wir noch ergänzen. Jetzt können Sie ja nicht jedes Mal eine View, wenn Sie sie ändern möchten, löschen und neu erstellen. Was ist nämlich der Nachteil dabei? Wenn Sie eine View löschen und neu erstellen, gehen sämtliche an diese View definierten Berechtigungen verloren. Sie müssen danach alle Berechtigungen, die Sie vielleicht schon gesetzt haben, neu setzen. Wenn Sie eine bestehende View hingegen ändern, bleiben die Berechtigungen erhalten. Deshalb werden wir uns jetzt anschauen, wie man eine bestehende View ändern kann. Die Logik unterscheidet sich hier jetzt komplett von einer Tabelle. Bei einer Tabelle haben wir eine neue Spalte hinzugefügt, indem wir die "Alter Table"-Anweisung verwendet haben und nur die Änderung sozusagen ergänzt haben. Das geht bei einer View nicht. Bei einem Ändern einer View wird sie als Ganzes quasi neu überschrieben. Dies bedeutet, dass Sie jetzt nicht nur die Änderungen an das System übergeben, sondern in den Aufruf das komplette CreateView-Statement einbauen. Der einzige Unterschied ist, dass Sie jetzt hier beim SQL-Server und bei MySQL das "Create" durch ein "Alter" ersetzen. Das heißt, das bedeutet, dass die bestehende View jetzt geändert wird. Nun können wir hier eine neue Spalte ergänzen, z.B. "Aktiv" und diese View damit überschreiben. Jetzt habe ich diese View überschrieben und die Spalte findet sich schon hier in der Definition der Struktur dieser View wieder. Generell gilt also folgende Regelung: Die Anweisungen zwischen "CreateView" und "AlterView" ist eigentlich ident, der einzige Unterschied ist, dass mit "Create" wird die View erzeugt und mit "Alter" wird sie überschrieben. Wenn Sie mit "Alter" die View überschreiben, bleiben sämtliche Berechtigungen, die bereits erteilt worden sind, erhalten. Sie müssen aber die komplette Anweisung neu verwenden, Sie können nicht nur die Änderung in das Statement einbauen, in das "AlterView", sondern den gesamten Aufruf. Einen leicht anderen Weg geht hier Oracle. Oracle vereinfacht den ganzen Vorgang dadurch, dass es keine Anweisung "AlterView" gibt, sondern nur die Anweisung "Create" oder "Create or Replace". Die Variante "Create or Replace" hat den Vorteil, dass sie immer funktioniert. Wenn es die Sicht noch nicht gibt, wird sie eben erstellt, und wenn sie bereits vorhanden ist, dann wird sie überschrieben. Und damit können Sie jederzeit eine Sicht im Nachhinein ändern. Was Sie jedes Mal brauchen, ist halt hier die komplette Definition der View. Das heißt, Sie sollten sich das Script aufheben oder entsprechend können Sie sich das natürlich über die grafischen Oberflächen, so wie hier, natürlich auch herausgenerieren, um es zu bekommen. Wenn Sie also eine Änderung an einer View vornehmen möchten, dann löschen Sie nicht diese und erzeugen sie neu, sondern überschreiben Sie diese. Bei Oracle realisieren Sie das über die Anweisung "Create or Replace View". Beim Microsoft SQL-Server und MySQL verwenden Sie anstelle von "Create" die Anweisung "Alter".

SQL Grundkurs 1: Die Sprache erlernen

Arbeiten Sie sich in die Grundlagen der Datenbanksprache SQL am Beispiel von Microsoft SQL Server, Oracle und MySQL ein und lassen Sie sich die praktische Nutzung erklären.

14 Std. 40 min (112 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!