Ich denke, das Thema „Datenbanken“ ist den meisten geläufig. Man kann es sich auch aus dem Begriff heraus schon fast zusammenreimen. Das Wort besteht aus den Wörtern „Daten“ und „Bank“. „Daten“ bezeichnet etwas Gespeichertes, das man wieder aufrufen kann. Eine Bank ist entweder etwas zum Sitzen oder man kennt sie als Ort, an dem man Geld einzahlen und wieder abheben kann. Bei Datenbanken kann man das mit einer „normalen“ Bank vergleichen: Man gibt Daten ein und holt sie irgendwann wieder ab. Es ist jedoch nicht wie bei einem Bankschalter, bei dem man zu einem Bankangestellten geht und sagt, dass man Betrag X von seinem Konto haben möchte. Man muss vielmehr die richtigen Befehle für eine Abfrage kennen, ähnlich wie bei einer Programmiersprache.
Zunächst möchte ich jedoch erklären, wie eine Datenbank aufgebaut ist. Eine Datenbank besteht aus mehreren Tabellen, die wiederum aus verschiedenen Spalten bestehen. Ich denke, das Ganze kann man am besten an einem Beispiel erkennen.
Tabelle: TblArtikel
| ArtikelNr | ArtikelBez | HerstellerNr |
| 01 | Grafikkarte | 22 |
| 02 | USBStick | 24 |
Tabelle: TblHersteller
| HerstellerNr | HerstellerName |
| 22 | Hersteller 1 |
| 24 | Hersteller 2 |
Bei diesem Beispiel sieht man, dass es zwei Tabellen gibt, und zwar einmal TblArtikel und dann noch TblHersteller. Wenn man jetzt z.B. wissen möchte, wie die Bezeichnung von dem Artikel mit der Artikelnummer 1 lautet, braucht man einen Befehl dafür.
So ein Befehl ist folgendermaßen aufgebaut: Man gibt zuerst an, welche Spalte aus einer Tabelle man sich anzeigen lassen möchte. Danach wird angegeben, auf welche Tabelle man sich bezieht. Anschließend kann man noch Ausschlusskriterien angeben, damit nicht alle Zeilen angezeigt werden, sondern z. B. nur eine bestimmte.
Hier einmal die ganzen Befehle in einer Tabelle zusammen gefasst:
| Befehl | Funktion |
| Select * Select Spaltenname Select Spalte1, Spalte2 |
Mit dem Befehl Select wählt man aus, welche Tabellen man sich anzeigen lassen möchte. Wenn man Select * eingibt, zeigt es einem alle Spalten der Tabelle an. Wenn man aber den Namen einer Spalte auswählt, wird nur diese angezeigt. Mehrere Spalten kann man sich ebenfalls anzeigen, indem man diese mit einem Komma voneinander trennt. |
| Select Distinct Spaltenname | Mit dem Befehl Distinct gibt man an, dass, falls in der gewünschten Spalte das Gleiche zweimal ausgegeben, würde, es gefiltert wird, sodass doppelte Inhalte nur einmal ausgegeben werden. |
| From Tabellenname | Mit dem From gibt man an, auf welche Tabelle man sich bezieht. |
| where Bedingung | Hier kann man eingrenzen, welche Bedingungen erfüllt sein müssen, damit es ausgegeben wird. |
| Order by asc Spaltenname Oder by desc Spaltenname |
Hier kann man seine Ausgabe sortieren lassen, man gibt an, nach welcher Spalte hin es sortiert sein soll. Mit ASC und DESC kann man sagen, ob man es gerne aufsteigend oder absteigend sortiert haben möchte. |
Hier ebenfalls noch eine Liste mit den Vergleichsoperatoren, welche man für die Where-Bedingungen verwenden kann:
| Operator | Bedingung |
| where ArtikelNr > HerstellerNr | Hier wird nur etwas ausgegeben, wenn die ArtikelNr größer als die HerstellerNr ist. |
| < | kleiner |
| >= | größer gleich |
| <= | kleiner gleich |
| = | gleich |
| <> | ungleich |
| and | Wenn man mit einem „and“ zwei Bedingungen verknüpft, müssen beide positiv erfüllt sein, damit etwas ausgegeben wird. |
| or | oder |
| not | nicht |
| where HerstellerNr between 20 and 22 | Mit dem Operator between kann man angeben, dass nur etwas ausgegeben wird, was sich zwischen den zwei Werten befindet. |
| where ArikelBez like “Gra*” | Mit dem Befehl „like“ kann man z. B. angeben, dass nur die Inhalte der Spalte ArtikelBez ausgegeben werden, welche mit Gra anfangen. |
Hier jetzt mal ein Beispiel einer SQL abfrage von der Tabelle TblArtikel,mit der man sich die ganzen Artikelbezeichnungen der Tabelle anzeigen lassen kann.
SELECT ArtikelBez FROM TblArtikel;
Wichtig ist, dass man den Befehl am Schluss immer noch mit einem ; abschließt.
Wenn man sich nur die Artikelbezeichnung und die Herstellernummer von dem Produkt mit der Artikelnummer 1 anzeigen lassen möchte, muss man in den Befehl die passende Bedingung einbauen. Das sieht dann folgendermaßen aus:
Select ArtikelBez, HerstellerNr From TblArtikel where Artikelnr = “1”;
Ich hoffe, mit diesem Grundlagenartikel konnte ich euch die Funktionsweise von Datenbanken und wie man simple Abfragen von diesen macht, etwas näherbringen.
Danke für die Mühe. Ich hab schon seit Jahren im Hinterkopf, endlich mit PHP und MySQL richtig einzusteigen und bin sicher, es ist alles keine Hexerei. Aber allein die Zeit fehlt. Solang ich den Befehl für Suchen/Ersetzen in phpMyAdmin hinbekomme, kann zumindest der laufende Betrieb funktionieren 🙂
Danke für die kleine Einführung… aber ich glaub in die Tiefen dieser “ Banken “ werde ich nicht einsteigen… da sollten doch lieber nur Profis ran… 😉