Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Eingabe neuer Datensätze - vermeiden von Dubletten





Frage

Hi, ich habe eine Access-Datenbank und ein Formular zur Eingabe der Daten eingerichtet. Wenn jetzt neue Datensätze eingegeben werden, soll irgendwie festgestellt werden, ob es den Datensatz schon gibt. Gebe ich zum Beispiel im Feld Name: "Charité Berlin" ein, soll geprüft werden, ob es diesen Satz schon gibt und ggf. angezeigt werden. Wie kann ich das ohne großen Aufwand machen? Vielen Dank für Eure Vorschläge!

Antwort 1 von fritz

Auf Feldebene (nicht auf Datensatzebene) kannst du das Feld indizieren und keine Duplikate zulassen.

Antwort 2 von Lind

Das reicht leider nicht immer:
Wenn man eine Adressdatenbank mit dem Namen Müller füttert, kann es durchaus sein, dass es noch einen anderen Müller gibt.
Dann führt die Indizierung dazu, dass man den zweiten Müller nicht mehr eingeben kann.

Ich tüftle auch schon lange an diesem Problem.
Es müsste eine Dialogbox erscheinen, um wählen zu können, ob man einen zweiten Müller eingeben kann.


Antwort 3 von struppi

Hallo
Ich habe das bei mir so gelöst:
Datensätze/Abfrage an ein ungebundenes Kombifeld hängen.
Kombifeld so einstellen das Datenunterschiede eindeitig erkennbar sind(Mehrspaltig)
Wenn ich einen neuen Datensatz eingeben will dann schreibe ich zunächst in das kombifeld. Access sucht jetzt wärend der Eingabe nach vergleichbaren Zeichen.
Findet es einen gleichnamigen Eintrag wird auf Enter oder klick der Datensatz gesucht und angezeigt.
Ist der Eintrag nicht vorhanden wird auf klick oder Enter eigentlich ein Fehlermeldung ausgegeben. (Kein Listeneintrag). Diese fange ich automatisch ab kopiere/lösche den Eintrag gehe zu neuen Datensatz und füge ein.
(Alles automatisch).
Ist ziemlich umständlich functioniert dafür aber sehr gut.

Antwort 4 von Marie

Ja, ich mach das auch mir Kombifeld.

Gruß Marie

Antwort 5 von Lind

kannst du mir genau sagen, wie?


Antwort 6 von senifor

ich hab das bei mir mit einem extra Feld geloest: Datentyp AutoNumber. Braucht im Formular nicht mit eingegeben zu werden, Access vergibt automatisch eine Nummer. Dieses Feld habe ich als Primaerschluessel definiert und das Namensfeld indiziert (ohne Duplikate).
Bye senifor

Antwort 7 von 14071

Hallo,

das mit der Namensindizierung haut nicht hin, weil es durchaus Leute gibt, die den gleichen Namen haben. Es bietet sich nur ein Kombischlüssel über mehrere Felder an, zB Vorname, Nachname, Geburtsdatum, PLZ, Ort und Strasse.

Aber auch das wird nur eindämmen und nicht ganz verhindern, dass in einer grossen Datenbank Redundanz entsteht. Stichworte Tippfehler, schlecht leserliche Vorlagen - Übernahmefehler und ähnliches.

Gruß
Jürgen

Antwort 8 von Jones

Hi Leute,

vielen Dank für Eure ganzen Tips, das hat mir sehr weitergeholfen!
Jones