Neuer Datensatz bei MS Access?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

MS Access vergibt die Nummern 100% ig korrekt, da ein einmal vergebener AutoWert nicht nochmal vergaben wird. Die ID ist wahrscheinlich auch Dein Primärschlüssel. Das macht aus Datenbanksicht absolut Sinn, dass ein einmal vergebener Schlüssel nicht nochmal vergeben wird. Stell Dir vor, Du hast eine Personaltabelle, bei der die ID die Personalnummer ist. Nun löscht Du (wenn das Sinn macht) den letzten Datensatz, z.B. mit der Personalnummer 10. Dann fügst Du einen neuen Datensatz hinzu und der bekäme dann wieder die 10. Dann hätte der neue Mitarbeiter schon alle Fehlzeiten und Urlaub etc... geerbt, wenn in anderen Tabellen weitere Infos zu der Personalnummer stünden (und keine Löschweitergabe in der DB vereinbart war).

Also, sei froh, dass das System so sauber arbeitet. Der Primärschlüssel sollte ja auch nur der internen Verarbeitung dienen.

Wenn Du unbedingt eine durchlaufende Nummer haben willst, füge ein neues Feld hinzu (Zahlenfeld) und schreibe dann z.B. in den ersten Datensatz eine 1. Als Standardwert trägst Du dann im Feld folgendes ein:
=DomMax("[DieserFeldname]";"Tabellenname")+1

Dann erhält jeder neue Datensatz einen um 1 höheren Wert, als der größte vorkommende Wert in diesem Feld.

Gruß, Armin

Woher ich das weiß:Berufserfahrung

Schaue dir deine Datenbank genau an. Es müssten noch die Einträge von 107, 108 und 109 vorhanden sein. Falls nicht. Dann füge als Ergänzung zur Löschung noch -1 hinzu (als Befehl)