PHP 4.3

13.1 Aufbau relationaler Datenbanken

Über den Aufbau von Datenbanken gibt es verschiedene Theorien, die alle ihre Vor- und Nachteile haben. In dieser Lerneinheit wollen wir uns nur mit dem am weitesten verbreiteten Typ von Datenbank beschäftigen, den relationalen Datenbanken. In einer solchen Datenbank werden alle Informationen in Tabellen gespeichert. Die Zeilen einer solchen Tabelle stellen die einzelnen Datensätze dar, die Spalten deren jeweilige Einzelinformationen. Z.B. könnte die Speicherung von Kundenadressen so aussehen:

Tabelle Kunden:

Kundennr Anrede Vorname Nachname Adresse Postleitzahl Ort
19283746 Frau Helga Krause Berliner Straße 10 12345 Berlin
17654321 Herr Otto Müller Bonner Straße 5 43526 Bonn
16293756 Frau Ilse Bilse Münchner Straße 222 87654 München
17356490 Herr Hugo Meier Kieler Straße 3 34256 Kiel

Eine Zeile enthält jeweils alle Daten, die zu einem bestimmten Kunden gehören, aufgeteilt in sogenannte Felder oder Attribute in den Spalten der Tabelle.

Besondere Beachtung verdient die Spalte Kundennummer. Sie bildet den sogenannten Primärschlüssel dieser Tabelle, das bedeutet, dass jeder Kunde eindeutig durch seine Kundennummer identifiziert wird. In der Primärschlüssel-Spalte darf kein Wert doppelt vorkommen, und beim Eintragen eines neuen Datensatzes darf diese Spalte auch nicht leer bleiben. Mit Hilfe dieses Primärschlüssels haben Sie nun die Möglichkeit, Verknüpfungen zwischen verschiedenen Tabellen herzustellen (auch Relationen genannt, daher der Name dieses Datenbanktyps). Wenn Sie sich merken wollen, dass Frau Helga Krause ein T-Shirt bestellt hat, dann schreiben Sie in die entsprechende Tabelle nicht den Namen Helga Krause, sondern Ihre Kundennummer. Genauso schreiben Sie auch nicht das Wort T-Shirt aus, sondern die zum T-Shirt gehörende Artikelnummer (hier im Beispiel 15):

Tabelle Bestellungen:

Bestellnummer Artikelnummer Kundennummer Menge
1 15 19283746 1
2 3 17654321 3

Tabelle Artikel:

Artikelnummer Bezeichnung Preis Beschreibung
15 T-Shirt 5,99 € ein besonders schönes, buntes T-Shirt für jede Gelegenheit, Einheitsgröße
3 Schokolade 0,65 € 100 g, Vollnuss
24 Fernseher 399,00 € riesiger Bildschirm, mit Videotext

Sie müssen jetzt zwar in drei Tabellen nachschauen, um zu wissen, dass Herr Otto Müller drei Tafeln Schokolade bestellt, aber diese Art der Speicherung hat den Vorteil, dass Daten nicht doppelt gespeichert werden. Das spart Platz und vermeidet Schreibfehler. Und glücklicherweise erledigt das Datenbank-Managementsystem die Arbeit, die richtigen Werte aus den jeweiligen Tabellen herauszusuchen, zumindest, wenn Sie die richtige Frage an es richten.

Um die Informationen aus einer Datenbank auszulesen, benötigt man die Datenbank-Abfragesprache SQL (Structured Query Language). Sie ist ausgesprochen umfangreich und bietet viele, sicherlich gerade für Programmierer interessante Möglichkeiten. In dieser Lerneinheit werden wir aus Platzgründen nur die wichtigsten Befehle dieser Sprache kennenlernen, mit denen Sie allerdings schon viele Aufgaben, die in einem PHP-Programm entstehen, erledigen können. Für eine weiter gehende Beschäftigung mit SQL ist die ebenfalls von der TEIA angebotene Qualifikationseinheit zu SQL zu empfehlen.

Kommentare (0)

Ihr Kommentar

Name