Hier der Entwurf einer sehr einfachen Datenbank zur Abbildung eines kleinen Obsthandels (Abb. 2.8), um im folgenden Kapitel die Datenbankfunktionen nutzen zu können.
Die Tabellenentwürfe ermöglichen es bisher, Bestellungen als Geschäftsvorgänge abzuwickeln. Hierzu müssen die Kundendaten, Anschriften von Lieferanten und Produktdaten gespeichert werden. Zudem gibt es noch eine Tabelle, in der die Bestellungen einlaufen, und eine weitere Tabelle mit den einzelnen Bestellpositionen. Im Praxiseinsatz wird man die betreffenden Tabellen erweitern müssen. So ist momentan zum Beispiel nur ein Lieferant pro Produkt möglich - aus Aufwandsgründen wurde auf die Normalisierung der Struktur mit Verlagerung in eine weitere Tabelle verzichtet.
In der Tabelle Produkt sind die Informationen zu den angebotenen Produkten hinterlegt. Abb. 2.9 zeigt im oberen Bereich den Tabellenentwurf, wobei die Produktnummer als Primärindex benutzt wird. Im unteren Teil sind die Beispielwerte zu sehen, die in der Tabelle hinterlegt wurden.
Die Tabelle Lieferant enthält die als Primärindex benutzte Lieferantennummer sowie Felder mit den Adressdaten (Abb. 2.10). Die Lieferantennummer wird bei jedem Produkt hinterlegt, so dass bei Anwahl eines Produkts ein Verweis auf die jeweiligen Lieferantendaten möglich ist. Die Tabelle Kunde besitzt eine ähnliche Struktur (Abb. 2.11), wobei dort die Kundennummer als Primärindex benutzt wird. Über die in der Bestellung hinterlegte Kundennummer lassen sich die Stammdaten des Kunden abrufen.
In der Tabelle Bestellung (Abb. 2.12) wird das Feld mit der Bestellnummer als Primärindex benutzt. Jeder Datensatz weist zudem die Kundennummer (zur Identifizierung der Kundenstammdaten) sowie ein Lieferdatum und ein Rechnungsdatum auf. In der Praxis würde man weitere Felder wie Auslieferungsstatus etc. in einer solchen Tabelle hinterlegen. Auch der Fall, dass mit Teilauslieferungen gearbeitet wird, bleibt hier unberücksichtigt. Die Einzelposten der Bestellung werden in einer separaten Tabelle Bestelldetails verwaltet (Abb. 2.13). Bei der Struktur gibt es aber ein Problem:
Die in Base benutzte Datenbank erlaubt nur dann Eingaben in Tabellen, wenn diese mit einem Primärindex versehen sind. Andererseits darf das Feld BestellNr nur als normaler Index ausgelegt werden, da für jede Bestellung mehrere Datensätze auftreten können. Das Problem wurde dergestalt gelöst, dass ein Hilfsfeld ID für den Primärindex eingeführt wurde. Der Datensatz weist noch die bestellte Menge sowie die Produktnummer auf. Anhand der Produktnummer lassen sich die Produktstammdaten (Gewicht, Name etc.) aus der Tabelle Produkt ermitteln.