Title: Aufbau einer Datenbanktabelle
Course: Datenbank > Section: Was ist eine Datenbank?

In der Regel wird in einer Tabelle Typ eines Objektes der realen Welt abgebildet. Wir möchten z. B. die KundInnen einer freien Autowerkstatt verwalten. So müssen wir uns fragen, durch welche Attribute (Felder) können die KundInnen hinreichend genau beschrieben werden.
Hierzu gehören sicherlich der Name, Vorname, Straße, Hausnummer, Postleitzahl, Wohnort, Telefonnummer, vielleicht Faxnummer, E-Mail-Adresse, Geburtsdatum. Sie sehen, neben relativ eindeutig notwendigen Attributen sind auch immer Attribute denkbar, bei denen geprüft werden sollte, ob Sie wirklich von Bedeutung sind!
Die ausgewählten Attribute stellen die Feldnamen und damit die Spaltenköpfe der Tabelle dar.

Abbildung 1: Leere Tabelle "Kunde"

In der Regel reicht es jedoch nicht, die Felder zu benennen, sondern fast alle DBMS erfordern eine Definition des Feldtyps, weil darüber auch der notwendige Speicherplatz bestimmt wird. Welche Feldtypen angeboten werden, ist je nach Software unterschiedlich, aber folgende Felder werden sich immer finden:
Text, Massentext, Zahl, Kalenderdatum, Logik.
Für das oben gezeigte Beispiel, können Sie die Struktur der Tabelle aus der nachfolgenden Abbildung 2 entnehmen.

Abbildung 2: Struktur der Tabelle Kunde

Die Postleitzahl wurde in diesem Beispiel nicht als Zahl definiert, weil seit 1990 die Postleitzahlen in Deutschland auch führende Nullen besitzen. Diese führenden Nullen würden bei der Definition "Zahl" wegfallen.
Bei der Frage welche Informationen in den Feldern aufgenommen werden sollen, ist darauf zu achten, dass in jedem Feld nur einzelne Informationen (sogenannte atomare Informationen) aufgenommen werden sollen. Wenn z. B. der Straßenname und die Hausnummer gemeinsam in einem Feld untergebracht worden wären, so wäre gegen diese Regel verstoßen worden, was in diesem Fall zu keinen schwerwiegenden Konsequenzen geführt hätte. Es wäre jedoch nicht akzeptabel, wenn die gesamte Anschrift (Straße, Hausnummer, PLZ, Ort) in einem Feld untergebracht würde.

Wenn jedes Feld mit Inhalt gefüllt wird, erhält man horizontal betrachtet einen Datensatz. Dieser beschreibt ein Objekt der realen Welt, in unserem Fall zum Beispiel den Kunden "Großschmidt". Alle Datensätze der Tabelle Kunde stellen dann die Datei "Kunde" dar. Um doppelte Datensätze zu vermeiden, wird in der Regel ein Feld benötigt, dass die "Einmaligkeit" des Datensatzes garantiert. Deshalb ist die Struktur aus der Abbildung 1 und 2 um das Feld Kundennummer erweitert worden. Felder, die die Aufgabe besitzen, die Einmaligkeit des Datensatzes zu sichern, heißen Primärschlüssel.

Abbildung 3: Tabelle Kunde mit Datensätzen

Um die Fehleranfälligkeit von Datenbanken möglichst klein zu halten, ist es wichtig, dass die Informationen möglichst nur einmal erfasst werden. In diesem Zusammenhang spricht man von Redundanzfreiheit. Dieses Erfordernis wird in der Regel dazu führen, dass zur Verwaltung komplexer Sachverhalte nicht eine, sondern mehrere Tabellen notwendig sind. Ohne auf Detailfragen der Datenbank-Entwicklung einzugehen, gibt Ihnen die folgende kleine Präsention "Datenbank-Entwicklung" einen ersten Einblick in die Entwicklung einer Datenbank.