Ich habe eine Tabelle mit Primärschlüssel Typ long integer, indiziert, ohne Duplikate importiert.
Eine nachträgliche Umwandlung in den Typ „Autowert“ wird verweigert.
Wie krieg ich das hin, dass beim Anlegen eines neuen Datensatzes die Nummer ähnlich wie bei „Autowert“ automatisch vergeben wird (keine doppelte Vergabe des Index möglich)?
Ich habe schon eine Abfrage erstellt, die mir den maximalen Werte des Index ermittelt. Der neue Datensatz müsste dann Index+1 haben.
dieses Problem hat sich mir schon mehrmals gestellt, wo die Aufgabenstellung war :Index fortlaufend ohne „Loecher“.
Da bleibt nichts anderes als beim Anlegen eines Datensatzes den Max-Wert +1 zu ermitteln und den Wert manuel dem Datensatz zuweisen. Je nach dem wie die Anwendung aussieht gibts es verschiedene Moeglichkeiten.
Die Neuanlage kompett in einer VBA Routine zu erledigen, oder in einem Formular abfragen ob der Index gesetzt ist…
Problematisch wird das nur in einer Multiuserumgebung, da muss man etwas aufpassen und entsprechende Sperren setzten, damit keine Ueberschneidungen passieren.
irgendwie wird ja wohl einer neuer Datensatz angelegt… an dieser Stelle muss man halte eine VBA-Routine anwerfen, die den Index setzt.
Ansonsten glaube ich mich zu erinnern wenn man die Daten in eine bestehende Tabellenbeschreibung importiert, in der das IndexFeld mit Autowert definiert ist, sollte das auch beim Import funktionieren.
Ich habe eine Tabelle mit Primärschlüssel Typ long integer,
indiziert, ohne Duplikate importiert.
Eine nachträgliche Umwandlung in den Typ „Autowert“ wird
verweigert.
Wie krieg ich das hin, dass beim Anlegen eines neuen
Datensatzes die Nummer ähnlich wie bei „Autowert“ automatisch
vergeben wird (keine doppelte Vergabe des Index möglich)?
Unabhängig von der anderen Diskussion:
Füge eine NEUES Tabellenfeld mit Datentyp Autowert ein und speicher den Tabellenentwurf.
Das (neue) Autowertfeld (mit Autoinkrement) erhält damit aber NICHT automatisch die „alten“ Wert des jeweiligen Datensatzes… Es klappt nur, wenn das alte Tabellenfeld keine Lücken aufweist…
Das alte „Autowert“-Tabellenfeld kann anschliessend gelöscht und das neue in den alten Namen umbenannt werden.