Abfrage (SELECT)
Die Grundvoraussetzungen für die Arbeit mit Datenbanken sind geschaffen.
Damit können wir uns jetzt mit der Abfrage der Informationen durch die SQL-Anweisung "SELECT
" beschäftigen.
Wir betrachten zuerst die SQL-Anweisung, die uns eine Ereignisliste ausgibt und bauen diese anschließend in ein praktisches Beispiel ein.
Datenbank betrachten
Bevor wir willkürlich irgendwelche Abfragen an die Datenbank schicken, betrachten wir die Tabelle "person" zuerst in phpMyAdmin.
Klar zu erkennen sind die verschiedenen Spalten mit den Bezeichnungen: "person_id", "anrede", "vorname", "nachname", "geburtsdatum", "familienstand" und "hochzeitsdatum". Eine Datenbankabfrage kann selbstverständlich nur ausgeführt werden, wenn wir auf die richtigen Spalten zugreifen.
Die SELECT Anweisung
Mit dem Schlüsselwort "SELECT
" übermitteln wir der Datenbank bereits zu Beginn, das wir etwas auswählen wollen.
Direkt nach dem Schlüsselwort übergeben wir der Datenbank auch die Informationen, aus welcher Spalte wir die Informationen ausgeben lassen wollen.
Mit dem Schlüsselwort "FROM
" geben wir an, von wo die Daten kommen sollen.
Nach dem Schlüsselwort geben wir den Tabellennamen an.
Am Ende jeder Anweisung wird mit dem Semikolon (;) das Ende des Befehls gekennzeichnet.
SELECT vorname FROM person;
Eine schnelle Überprüfung der SQL-Anweisung kann auch in phpMyAdmin durchgeführt werden. Einfach auf den Reiter "SQL" klicken und die SQL-Anweisung eintragen.
Nach einem Klick auf "OK" wird das Ergebnis auf dem Monitor sichtbar.
Mehrere Datenfelder ausgeben
Sollte die Ausgabe mehrerer Werte erwünscht sein, werden die Spaltennamen mit einem Komma voneinander getrennt, zwischen "SELECT
" und "FROM
" übergeben.
SELECT vorname, nachname FROM person;
Alle Datenfelder ausgeben
Wenn alle Spalten einer Tabelle ausgegeben werden sollen, dann können entweder alle Spaltennamen in der Abfrage angegeben werden, oder es wird das Sternchensymbol (*) verwendet, um der Datenbank mitzuteilen, dass alle Spalten der Tabelle ausgegeben werden sollen.
SELECT * FROM person;
Praktisches Beispiel im System
Kommen wir zu dem praktischen Teil, in dem die Ausgabe vom System erzeugt wird und auf dem Monitor erscheint.
In diesem Beispiel werden wir uns die Anreden und die Namen der Personen ausgeben lassen, die in der Datenbank hinterlegt sind. Das Beispiel beruht auf dem Konstrukt, welches im Kapitel "Erste Schritte" behandelt wurde. Diesmal lassen wir uns nur andere Informationen ausgeben.
if ($db = mysqli_connect("localhost", "root", "", "training")) {
echo "";
} else {
exit ("Verbindungsfehler: " . mysqli_connect_error());
}
$abfrage = "SELECT anrede, vorname, nachname FROM person";
if ($ausgabe = mysqli_query($db, $abfrage)) {
echo "<ul>";
while ($zeile = mysqli_fetch_assoc($ausgabe)) {
echo "<li>" . htmlspecialchars($zeile["anrede"]) . " " . htmlspecialchars($zeile["vorname"]) . ", " . htmlspecialchars($zeile["nachname"]) . "</li>";
}
echo "</ul>";
}
mysqli_close($db);
Weiter mit Bedingung (WHERE)