Jeder Datensatz (Objekt, Zeile) einer Tabelle sollte eine eindeutige Nummer zugewiesen bekommen. Das Feld mit dieser eindeutigen Nummer nennen wir den Primärschlüssel. Die Nr. 3 z.B. darf also nur ein einziges mal geben.
Um jedes Bild einer KünstlerIn zuordnen zu können, muss es in der Tabelle Bilder nun ein Feld (Spalte) geben, die auf den Primärschlüssel der Tabelle KünstlerInnen verweist. Dieses Feld nennen wir Fremdschlüssel.
Eine Beziehung wird meist zwischen Primärschlüssel und Fremdschlüssel erstellt. Beide Felder müssen dabei den gleichen Felddatentyp* besitzen.
*) der Felddatentyp AutoWert in Access entspricht dem Typ Zahl (LongInteger), mit der Eigenschaft, dass der Wert bei jedem neuen Datensatz um 1 erhöht wird. Ist das Primärschlüsselfeld also ein AutoWert-Feld, muss das Fremdschlüsselfeld vom Typ Zahl (LongInteger) sein.
In der Tabelle Bilder brauchen wir den Primärschlüssel im Moment noch nicht. Trotzdem sollte die Primärschlüsselspalte bei jeder Tabelle mit eingeplant werden. Die Datenbank wird später sicher und um weiter Tabellen und Beziehungen größer.
Erweitern wir unser Beispiel um eine Tabelle Kunden.
Es muss überlegt werden, wie die Tabelle mit den Kundendaten mit anderen Daten in Beziehung gebracht werden soll. Kunden kaufen Bilder, also...
Das Problem: 1 Kunde kann immer nur 1 Bild kaufen. Es handelt sich um eine so genannte 1:1 Beziehung. Datenbanktechnisch gesehen wäre es zwar eine 1:n Beziehung, in der Praxis kann ein Bild aber nicht mehreren Kunden verkauft werden.
In einem Primärschlüssel-Feld darf ein bestimmter Wert nur einmal vorkommen (keine Duplikate).
In einem Fremdschlüssel-Feld darf ein Wert auch mehrfach vorkommen.