Im Zusammenhang mit der Programmierung von PHP und MySQLi-Abfragen tauchen manche Begriffe sehr häufig auf, die für Anfänger geklärt sein müssen, damit wir vom selben sprechen. Dazu gehört natürlich der Überbegriff Datenbank. Eine Datenbank ist die Summe seiner Datentabellen, die diese beinhalten kann. Man darf sich das nicht so vorstellen, dass eine Datenbank nur aus einer Tabelle besteht - das wäre dann die Datentabelle für sich.
Eine Datenbank ist der Rahmen für die eigentlichen Daten und kann 100 oder mehr verschiedene Datentabellen beinhalten. Eine typische Datenbank, wie sie im Internet täglich im Einsatz ist, könnte folgenden Inhalt haben:
Webhosting mit viel Software bei Alfahosting (Affiliate-Link)
Die Datenbank bildet das Außengerüst all dieser Informationen. In einer Datenbank selbst wird man keine Daten finden, die sind in der Datentabelle gespeichert. Wenn die Datentabelle die Schublade ist, in der die Papiere abgelegt sind, dann ist die Datenbank der Kasten oder Schreibtisch, in dem sich die Schublade befindet.
Die Datentabelle beinhaltet die eigentlichen Informationen, mit denen man sich auf der Webseite auseinandersetzt. Sie hat eine Struktur mit Datenfelder und jedes der Felder kann abgefragt werden. Gibt es eine Abfrage mit sechs Datenfeldern, aber die Datentabelle hat nur fünf Felder, dann kommt es zu einer Warnung. Im Falle einer Speicherung kommt es sogar zum Abbruch, weil man nicht sechs Felder in fünf Felder speichern kann.
Das Datenfeld wiederum ist ein eigenes fix definiertes Feld für bestimmte Informationen. Eine Datentabelle für Adressen könnte zum Beispiel folgende Felder beinhalten:
Jeder dieser Einträge ist ein eigenes Datenfeld, sodass man später alle Adressen heraussuchen kann, deren Nachname "Maier" heißt oder die die Postleitzahl 2700 aufweisen.
Webhosting bei Alfahosting - jetzt gratis testen! (Affiliate-Link)
Auf die Arten der Datenfelder werde ich später noch zurückkommen, denn diese können völlig unterschiedlich definiert sein. Wichtig ist auch zu verstehen, dass die Datentabellen durch ihre Felder vernetzt sein können. So könnte es sein, dass manche der oben genannten Informationen in einer weiteren Tabelle gespeichert sind, beispielsweise in der Liste jener, die ein Auto haben. Dann wird man wahrscheinlich die ID-Nummer als Kriterium heranziehen.
Das ist jetzt für die Datenbank nicht so wichtig, ist aber für das Grundverständnis komplexer PHP-Projekte wesentlich. Sie werden noch viele Situationen kennenlernen, in denen nicht nur die Datenbank kontaktiert und eine Datentabelle abgefragt wird, sondern wo abgefragt wird, welche Personen sowohl bei den Adressen als auch in der Tabelle der Autofahrer enthalten sind. Spätestens bei solchen Abfragen vernetzen sie - vermutlich unbewusst - Ihre Datentabellen.
Die MySQL-Einführung setzt sich aus verschiedenen Ebenen zusammen. Zuerst einmal muss man das Prinzip mit den Relationen und den Datensymbolen verstehen. Die Voraussetzungen müssen erfüllt sein, um eine Datenbank betreiben zu können und für viele ist der Editor phpMyAdmin eine große Hilfe bei der Verwaltung.
Für den Gesamtzusammenhang muss man den Unterschied von Datenbank und Datentabelle verstehen, denn die Datenbank ist der Platz, die Datentabelle in Wirklichkeit der Ort der Informationen.
Und dann muss man ein gutes Konzept entwickeln, welche Tabellen man aufbauen möchte und welche Felder man braucht. Dafür muss man die Datentypen kennen, die es für Text, Zahlen und das Datum gibt und unterschiedlich groß sein können. Bei großer Zahl von Datensätze kann eine falsche Felddefinition durchaus viel mehr Speicherbedarf bedeuten als nötig.
Themenseiten
Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen
Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel
Praxisartikel