Ho una tabella in MS Access che ha un numero di tipo AutoNumber
di campo
Dopo aver inserito alcune righe, l’ ID
è diventato 200
Quindi, ho cancellato i record nella tabella. Tuttavia, quando ho provato a inserire una nuova riga, vedo che l’ ID
inizia con 201
Come posso forzare l’ ID
a riavviare con 1
, senza dover rilasciare il tavolo e crearne uno nuovo?
Puoi usare:
CurrentDb.Execute "ALTER TABLE yourTable ALTER COLUMN myID COUNTER(1,1)"
Spero che tu non abbia relazioni che usano questo tavolo, spero che sia vuoto, e spero tu capisca che tutto ciò che puoi (principalmente) fare affidamento su un autonumber per essere è unico. È ansible ottenere intervalli, salti, numeri molto grandi o addirittura negativi, a seconda delle circostanze. Se il tuo numero autonome significa qualcosa, hai un grosso problema in attesa di accadere.
In Access 2007 – 2010, vai su Strumenti database e fai clic su Compatta e ripristina database, e ripristinerà automaticamente l’ID.
Oltre a tutte le preoccupazioni espresse sul motivo per cui dai il culo al vero valore dell’ID (tutto è corretto che non dovresti), lascia che aggiunga questo al mix:
Se hai eliminato tutti i record dalla tabella, la compattazione del database reimposta il valore iniziale al valore originale.
Per una tabella in cui ci sono ancora dei record e hai inserito un valore nel campo di Autonumber che è inferiore al valore più alto, devi utilizzare il metodo di @ Remou per reimpostare il valore di seed. Questo vale anche se vuoi reimpostare il Max + 1 in una tabella in cui i record sono stati cancellati, ad es. 300 record, l’ultimo ID di 300, elimina 201-300, compact non resetterà il contatore (devi usare @ Il metodo di Remou – questo non era il caso nelle versioni precedenti di Jet e, in effetti, nelle prime versioni di Jet 4, la prima versione di Jet che permetteva di manipolare il valore di inizializzazione in modo programmatico.
Penso che l’unico modo per farlo sia descritto in questo articolo .
L’articolo spiega diversi metodi. Ecco un esempio:
Per eseguire questa operazione in Microsoft Office Access 2007, attenersi alla seguente procedura:
Elimina il campo Contatore dalla tabella principale.
Stai per incollare # row (s) in una nuova tabella.
Fare clic su Sì per inserire le righe.