Ein Primärschlüssel ist ein Feld oder eine Gruppe von Feldern mit Werten, die in einer Tabelle eindeutig sind. Sie können mit den Werten des Schlüssels auf ganze Datensätze verweisen, da jeder Datensatz einen anderen Wert für den Schlüssel hat. Jede Tabelle kann nur einen Primärschlüssel haben. Access kann automatisch ein Primärschlüsselfeld erstellen, wenn Sie eine Tabelle erstellen, oder Sie können die Felder angeben, die Sie als Primärschlüssel verwenden möchten. In diesem Artikel wird erläutert, wie und warum Primärschlüssel verwendet werden.
Um den Primärschlüssel einer Tabelle festzulegen, öffnen Sie die Tabelle in der Entwurfsansicht. Wählen Sie das Feld (oder die Felder) aus, das Sie verwenden möchten, und wählen Sie dann im Menüband Primärschlüssel aus.
Inhalt dieses Artikels
- Übersicht über Primärschlüssel in Access
- Festlegen des Primärschlüssels mit bereits in Access vorhandenen Feldern
- Entfernen eines Primärschlüssels
- Ändern des Primärschlüssels in Access
- Weitere Informationen
Übersicht über Primärschlüssel in Access
Access verwendet Primärschlüsselfelder, um Daten aus mehreren Tabellen schnell zu lesen und sinnvoll zu kombinieren. Sie können die Primärschlüsselfelder in andere Tabellen einfügen, um auf die Tabelle zu verweisen, aus welcher der Primärschlüssel stammt. In den anderen Tabellen werden diese Felder als Fremdschlüssel bezeichnet. So kann z. B. das Feld "Kunden-ID" in der Tabelle "Kunden" auch in der Tabelle "Aufträge" vorkommen. In der Tabelle "Kunden" handelt es sich um den Primärschlüssel. In der Tabelle "Aufträge" wird er als Fremdschlüssel bezeichnet. Bei einem Fremdschlüssel handelt es sich, einfach ausgedrückt, um den Primärschlüssel einer anderen Tabelle. Weitere Informationen finden Sie unter Grundlagen des Datenbankentwurfs.
1. Primärschlüssel
2. Fremdschlüssel
Wenn Sie vorhandene Daten in eine Datenbank verschieben, verfügen Sie möglicherweise bereits über ein Feld, das Sie als Primärschlüssel verwenden können. Oft dient eine eindeutige Identifikationsnummer wie eine ID-Nummer, eine Seriennummer oder ein Code als Primärschlüssel in einer Tabelle. Sie können beispielsweise eine Kundentabelle haben, in der jeder Kunde eine eindeutige Kundennummer hat. Das Feld mit der Kundennummer ist dann der Primärschlüssel.
Von Access wird automatisch ein Index für den Primärschlüssel erstellt, der zur Beschleunigung von Abfragen und anderen Operationen beiträgt. Außerdem wird sichergestellt, dass jeder Datensatz einen Wert im Primärschlüsselfeld hat und dieser immer eindeutig ist.
Wenn Sie eine neue Tabelle in der Datenblattansicht erstellen, erstellt Access automatisch einen Primärschlüssel und weist diesem den Feldnamen "ID" und den Datentyp "AutoWert" zu.
Wodurch zeichnet sich ein guter Primärschlüssel aus?
Ein guter Kandidat für einen Primärschlüssel weist verschiedene Merkmale auf:
- Jede Zeile wird eindeutig identifiziert.
- Sie ist nie leer oder NULL – sie enthält immer einen Wert.
- Die darin enthaltenen Werte ändern sich selten (im Idealfall nie).
Wenn Sie keinen guten Schlüssel identifizieren können, erstellen Sie ein AutoWert-Feld, das als Schlüssel verwendet werden soll. Ein AutoWert-Feld erzeugt beim ersten Speichern eines Datensatzes automatisch einen eindeutigen Wert. Ein AutoWert-Feld erfüllt damit alle drei Eigenschaften eines guten Primärschlüssels. Weitere Informationen zum Hinzufügen eines AutoWert-Felds finden Sie unter Hinzufügen eines AutoWert-Felds als Primärschlüssel.
Ein AutoWert-Feld bildet einen guten Primärschlüssel.
Beispiele für schlechte Primärschlüssel
Felder, denen ein oder mehrere Merkmale eines guten Kandidaten fehlen, gelten als schlechte Wahl für einen Primärschlüssel. Nachstehend finden Sie einige Beispiele für Felder, die keine guten Primärschlüssel für eine Kontakttabelle bilden, samt Gründen.
| Schlechter Primärschlüssel | Grund |
|---|---|
| Name einer Person | Möglicherweise nicht zuverlässig eindeutig und Änderung möglich |
| Telefonnummer | Änderung möglich |
| E-Mail-Adresse | Änderung möglich |
| Postleitzahl | Mehrere Personen können über die gleiche PLZ verfügen |
| Kombinationen von Fakten und Zahlen | Die Fakten könnten sich ändern, wodurch zusätzlicher Wartungsaufwand entsteht. Es könnte zu Verwirrung führen, wenn der Faktenteil als separates Feld wiederholt wird. Beispielsweise wäre die Kombination von "Ort" und einer Zahl, die inkrementiert wird, (z. B. "NEWYORK0579") keine gute Lösung, wenn der Ort auch als Feld gespeichert wird. |
| Sozialversicherungsnummern |
|
Zusammengesetzte Schlüssel: Verwenden mehrerer kombinierter Felder als Primärschlüssel
In einigen Fällen möchten Sie zwei oder mehr Felder in einer Tabelle als Primärschlüssel verwenden. So könnten Sie beispielsweise in der Tabelle "Auftragsdetails", in der Positionen für Aufträge gespeichert werden, zwei Felder für den Primärschlüssel verwenden: "Auftrags-ID" und "Produkt-ID". Ein Schlüssel, der aus mehr als einem Feld besteht, wird als "zusammengesetzter Schlüssel" bezeichnet.
Festlegen des Primärschlüssels mit bereits in Access vorhandenen Feldern
Damit ein Primärschlüssel ordnungsgemäß funktioniert, muss das Feld jede Zeile eindeutig identifizieren, darf niemals einen leeren oder Nullwert enthalten und darf sich nur selten (idealerweise niemals) ändern. Gehen Sie folgendermaßen vor, um den Primärschlüssel festzulegen
Öffnen Sie die zu ändernde Datenbank.
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf die Tabelle, in der Sie den Primärschlüssel festlegen möchten, und wählen Sie im Kontextmenü Entwurfsansicht aus.
Tipp
Wird der Navigationsbereich nicht angezeigt, drücken Sie F11, um ihn anzuzeigen.
Markieren Sie das Feld bzw. die Felder, das/die Sie als Primärschlüssel verwenden möchten.
Um ein Feld auszuwählen, wählen Sie die Zeilenauswahl für das gewünschte Feld aus.
Um mehrere Felder auszuwählen, um eine zusammengesetzte Taste zu erstellen, halten Sie STRG gedrückt, und wählen Sie dann die Zeilenauswahl für jedes Feld aus.Wählen Sie auf der Registerkarte Tabellenentwurf in der Gruppe Tools die Option Primärschlüssel aus.
Links neben dem Feld bzw. den Feldern, die Sie als Primärschlüssel angegeben haben, wird ein Schlüssel angezeigt.
Entfernen eines Primärschlüssels in Access
Wenn Sie den Primärschlüssel entfernen, liefern das Feld bzw. die Felder, die zuvor als Primärschlüssel gedient haben, nicht mehr das primäre Mittel zur Identifizierung eines Datensatzes.
Durch das Entfernen des Primärschlüssels werden die Felder nicht aus der Tabelle gelöscht, aber der Index, der für den Primärschlüssel erstellt wurde.
Bevor Sie einen Primärschlüssel entfernen können, müssen Sie sicherstellen, dass er zu keiner Tabellenbeziehung gehört. Wenn Sie versuchen, einen Primärschlüssel zu entfernen, der zu einer oder mehreren Beziehungen gehört, werden Sie von Access informiert, dass Sie die Beziehungen zunächst löschen müssen.
Führen Sie zum Löschen einer Tabellenbeziehung die folgenden Schritte aus:
- Wenn die Tabellen, für die Tabellenbeziehungen bestehen, geöffnet sind, schließen Sie diese. Sie können keine Tabellenbeziehung zwischen geöffneten Tabellen löschen.
- Wählen Sie auf der Registerkarte Datenbanktools in der Gruppe Beziehungendie Option Beziehungen aus.
- Wählen Sie Tabellen hinzufügen aus.
- Wählen Sie die Tabellenbeziehungslinie für die Tabellenbeziehung aus, die Sie löschen möchten (die Zeile wird fett formatiert, wenn sie ausgewählt ist), und drücken Sie dann die ENTF-TASTE.
- Klicken Sie auf der Registerkarte Beziehungsentwurf in der Gruppe Beziehungen auf Schließen.
Klicken Sie nach dem Löschen der Beziehungen im Navigationsbereich mit der rechten Maustaste auf die Tabelle, aus der Sie den Primärschlüssel entfernen möchten, und wählen Sie dann Entwurfsansicht aus.
Tipp
Wird der Navigationsbereich nicht angezeigt, drücken Sie F11, um ihn anzuzeigen.
Wählen Sie die Zeilenauswahl für den aktuellen Primärschlüssel aus.
Wenn der Primärschlüssel aus einem einzelnen Feld besteht, wählen Sie die Zeilenauswahl für dieses Feld aus.
Wenn der Primärschlüssel aus mehreren Feldern besteht, wählen Sie die Zeilenauswahl für jedes Feld im Primärschlüssel aus.Wählen Sie auf der Registerkarte Tabellenentwurf in der Gruppe Tools die Option Primärschlüssel aus.
Der Schlüsselindikator wird aus dem Feld oder den Feldern, das/die Sie zuvor als Primärschlüssel angegeben haben, entfernt.
Hinweis
Wenn Sie eine neue Tabelle speichern, ohne einen Primärschlüssel festzulegen, werden Sie von Access aufgefordert, einen Primärschlüssel zu erstellen. Wenn Sie Ja auswählen, wird von Access ein ID-Feld erstellt, das den Datentyp "AutoWert" verwendet, um einen eindeutigen Wert für jeden einzelnen Datensatz bereitzustellen. Wenn die Tabelle bereits ein Feld vom Typ "AutoWert" enthält, wird dieses Feld von Access als Primärschlüssel verwendet.
Ändern des Primärschlüssels in Access
Wenn Sie den Primärschlüssel einer Tabelle ändern möchten, können Sie wie folgt vorgehen:
- Entfernen Sie den vorhandenen Primärschlüssel anhand der Anweisungen im Abschnitt Entfernen des Primärschlüssels.
- Legen Sie den Primärschlüssel mithilfe der Anweisungen im Abschnitt Festlegen des Primärschlüssels fest.
Weitere Informationen
Weitere Informationen zum Datenbankentwurf und zur Auswahl eines entsprechenden Primärschlüssels finden Sie in folgenden Artikeln: