Datenbankentwicklung
Relationale Datenbanken
Eine relationale Datenbank kann man sich als eine Sammlung von Tabellen vorstellen, in welchen Datensätze abgespeichert sind (ähnlich einer Excel-Tabelle). Jede Zeile in einer Tabelle ist ein Datensatz und beinhaltet zum Beispiel die Informationen zu einem Kunden (Name, Adresse, Kundenstatus). Über das Relational Database Management Systems (RDBMS) können die Informationen in der Datenbank effizient gespeichert und gezielt in den benötigten Teilmengen abgerufen werden.
MySQL
MySQL ist ein weit verbreitetes Relationales Datenbankverwaltungssystem, welches häufig die Grundlage für dynamische WebauftritteDynamische Webseiten werden im Moment der Anforderung auf dem Webserver durch ein (PHP-) Skript erzeugt. Das Skript führt die Inhalte (z. B. aus einer Datenbank) und das Layout zusammen und übermittelt das erstellte XHTML-Dokument an den Benutzer. bildet. Die Software ist Open-Source und als freie Software unter der General Public License (GPL) erhältlich. Fast jeder Webhoster bietet Pakete mit PHP und mehreren MySQL-Datenbanken zu einem günstigen Preis an.
Konzeption
Der eigentlichen Programmierung datenbankgestützer Webseiten geht eine konzeptionelle Phase voraus. Um die Datenmenge gering zu halten und schnelle Datenbankabfragen zu gewährleisten, ist es sinnvoll, sich vorher Gedanken über die Struktur, Schlüssel, Relationen und die Indizierung zu machen.
Für den Programmier ist es daher wichtig, vor Programmierbeginn das Gesamtkonzept des Projekts zu kennen. Mögliche spätere Erweiterungen der Datenbank können so bereits bedacht und in die Struktur einbezogen werden.
Optimierung von Datenbanken
Auch wenn der Arbeitsaufwand im Nachhinein immer aufwendiger ist, lassen sich natürlich auch bestehende Datenbanken weiterentwickeln oder optimieren. Hierbei ist zu unterscheiden zwischen der Struktur der Datenbank (Aufbau der Tabellen, Relationen, Indizierung) und den (PHP-) Anfragen, die an die Datenbank gestellt werden. Sowohl eine schlechte Struktur als auch ungünstig geschriebene Anfragen können das System unnötig verlangsamen und die Serverlast erhöhen.