Sie können doppelte Werte in einem Feld in einer Access-Tabelle verhindern, indem Sie einen eindeutigen Index erstellen. Ein eindeutiger Index ist ein Index, der erfordert, dass jeder Wert des indizierten Felds eindeutig ist.
Es gibt zwei grundlegende Möglichkeiten, einen eindeutigen Index zu erstellen:
-
Legen Sie die Indexed-Eigenschaft des Felds auf Ja (Keine Duplikate) fest. Öffnen Sie dazu die Tabelle in Entwurfsansicht. Diese Methode ist einfach und eine gute Wahl, wenn Sie nur jeweils ein Feld ändern möchten.
-
Erstellen eines Datendefinitionsabfrage, der den eindeutigen Index erstellt Dazu können Sie SQL-Ansicht verwenden. Diese Methode ist nicht so einfach wie die Entwurfsansicht, hat aber einen Vorteil: Sie können die Datendefinitionsabfrage speichern und später erneut verwenden. Dies ist nützlich, wenn Sie Tabellen in regelmäßigen Abständen löschen und neu erstellen und eindeutige Indizes für einige der Felder verwenden möchten.
Inhalt dieses Artikels
Legen Sie die Indexed-Eigenschaft eines Felds auf Ja (Keine Duplikate) fest.
-
Klicken Sie im Navigationsbereich mit der rechten Maustaste auf die Tabelle, die das Feld enthält, und klicken Sie dann auf Entwurfsansicht.
-
Wählen Sie das Feld aus, für das Sie sicherstellen möchten, dass eindeutige Werte vorhanden sind.
-
Legen Sie im Bereich Feldeigenschaften unten in der Tabellenentwurfsansicht auf der Registerkarte Allgemein die Indizierte Eigenschaft auf Ja (Keine Duplikate) fest.
-
Speichern Sie die Änderungen an Ihrer Tabelle.
Hinweis: Wenn im Feld für Ihre Tabellendatensätze bereits Duplikate vorhanden sind, zeigt Access eine Fehlermeldung (Fehler 3022) an, wenn Sie versuchen, die Tabellenänderungen mit dem neuen Index zu speichern. Sie müssen diese doppelten Feldwerte aus den Tabellendatensätzen entfernen, bevor Sie den neuen eindeutigen Index festlegen und speichern können.
Erstellen eines eindeutigen Indexes für ein Feld mithilfe einer Datendefinitionsabfrage
-
Klicken Sie auf der Registerkarte Erstellen in der Gruppe Abfragen auf Abfrageentwurf.
-
Klicken Sie auf der Registerkarte Entwurf für Abfragen in der Gruppe Ergebnisse unter Ansicht auf den Pfeil, und klicken Sie dann auf SQL-Ansicht.
-
Löschen Sie alle vorhandenen SQL-Instanzen aus der Abfrage. (Access zeigt höchstwahrscheinlich nur SELECT an, bevor Sie den vorhandenen Text löschen.)
-
Geben Sie den folgenden SQL-Code in die Abfrage ein, oder fügen Sie sie ein:
CREATE UNIQUE INDEX index_name
ON table (field); -
Ersetzen Sie in SQL die Variablen wie folgt:
-
Ersetzen Sie index_name durch einen Namen für Ihren Index. Es empfiehlt sich, einen Namen zu verwenden, der Ihnen hilft, den Zweck des Indexes zu bestimmen. Wenn der Index beispielsweise sicherstellen soll, dass Telefonnummern eindeutig sind, können Sie sie unique_phone benennen.
-
Ersetzen Sie table durch den Namen der Tabelle, die das zu indizierte Feld enthält. Wenn der Tabellenname Leerzeichen oder Sonderzeichen enthält, müssen Sie den Namen in eckige Klammern einschließen.
-
Ersetzen Sie feld durch den Namen des felds, das indiziert werden soll. Wenn der Feldname Leerzeichen oder Sonderzeichen enthält, müssen Sie den Namen in eckige Klammern einschließen.
-
-
Speichern und schließen Sie die Abfrage.
-
Führen Sie die Abfrage aus, um den Index zu erstellen. Beachten Sie, dass Sie die Abfrage über ein Makro ausführen können, indem Sie die AusführenSQL-Makroaktion verwenden.