Views erstellen und ändern in phpMyAdmin

02. Oktober 15

Das Anlegen und nachträgliche Ändern von Tabellen ist in phpMyAdmin relativ intuitiv. Will man z.B. in phpMyAdmin die Felder in einer Tabelle im Nachhinein ändern, so wählt man die Tabelle aus und klickt oben auf den Button "Struktur". Es werden dann die Feld-Definitionen der Tabelle angezeigt, und man kann bestehende Felder ändern, entfernen und neue Felder definieren.

Ein bisschen komplizierter ist der Umgang mit Views ("Ansichten"). Weil Views aber im Umgang mit einer Datenbank sehr nützlich sind, will ich hier kurz erklären, wie man damit arbeiten kann:

Einen View anlegen

Meiner Erfahrung nach ist folgendes Vorgehen am einfachsten: Man gibt unter "SQL" das gewünschte SQL-Statement ein und editiert dieses hier so lange, bis die Ausgabe passt. Dann klickt man rechts unterhalb der Ausgabe den Link "Erzeuge View" und gibt dem View den gewünschten Namen ("VIEW_NAME"):

View anlegen mit PHPMyAdmin

Der View steht nun im phpMyAdmin-Fenster in der linken Spalte unter "Ansichten".

Natürlich kann man alternativ auch unter "Ansichten" den Link "Neu" anklicken und den SQL-String direkt eingeben.

Bei Verwendung von realurl gibt ein Link auf eine geschützte Seite einen Error 404, wenn man nicht eingeloggt ist; deshalb verwenden wir ein eigenes PageNotFound-Handling, d.h. in der localconf.php bzw. im Install Tool wird deklariert:

Einen bestehenden View ändern

Versucht man dasselbe mit einem View, gelangt man zunächst auf eine Seite, auf der lediglich die Felder des Views aufgelistet werden.

Erst der Link "View/Ansicht bearbeiten" unterhalb dieser Liste führt zum SQL-Statement, welches den View definiert. Hier kann das SQL-Statement bearbeitet und der View somit geändert werden.

SQL-View ändern in phpMyAdmin

In der Datei fileadmin/pageNotFound.php unterscheidet die Funktion pageNotFound() zwei Fälle: Wenn auf eine Seite verlinkt wird, welche im internen Bereich liegt, wird dem Benutzer die Login-Seite angezeigt; nach erfolgreichem Login erfolgt dann der Redirect auf die geschützte Seite. Wenn auf eine Seite verlinkt wird, die tatsächlich nicht existiert, wird eine Error-404-Seite angezeigt. In beiden Fällen wird die gewünschte Sprache berücksichtigt.

Es öffnet sich ein Fenster mit dem Titel "View/Ansicht bearbeiten", in dem das SQL-Statement des Views angezeigt wird:

Dialog-Fenster zum Bearbeiten eines Views in phpMyAdmin

Hier kann das SQL-Statement wie gewünscht geändert werden. Vor dem Klick auf "OK" die Felder "Ersteller" und "SQL SECURITY" leeren, sonst erhält man eine Fehlermeldung wegen falscher Syntax.

Übrigens: Wenn man beim Speichern des geänderten Views eine Fehlermeldung bekommen hat, weil z.B. das SQL-Statement nicht korrekt war, so stehen unterhalb der Fehlermeldung wiederum die Felder zur Bearbeitung des Views, diesmal aber im Modus "ERZEUGE VIEW". Hier muss man die Option "REPLACE" ankreuzen, um den bereits bestehenden View zu ersetzen.

Mehr Infos zu View in phpMyAdmin

Detaillierte Informationen zur Verwendung von Views findet man z.B. in der